[PHP-CVS] [php-src] master: ext/libxml: applied fixers to improve test robustness (#23024)

[email protected] (NickSdot via GitHub)
Newsgroups php.cvs
Message-ID <[email protected]>
Author: NickSdot (NickSdot)
Committer: GitHub (web-flow)
Pusher: Girgias
Date: 2026-08-22T14:03:25+01:00

Commit: https://github.com/php/php-src/commit/2f981224b02d73b5ba8ed7d0e262dcd9c7ab8161
Raw diff: https://github.com/php/php-src/commit/2f981224b02d73b5ba8ed7d0e262dcd9c7ab8161.diff

ext/libxml: applied fixers to improve test robustness (#23024)

Changed paths:
  M  ext/libxml/tests/004.phpt
  M  ext/libxml/tests/bug63389.phpt
  M  ext/libxml/tests/libxml_get_external_entity_loader_error_callback_name.phpt
  M  ext/libxml/tests/libxml_set_external_entity_loader_error1.phpt
  M  ext/libxml/tests/libxml_set_external_entity_loader_error2.phpt


Diff:

diff --git a/ext/libxml/tests/004.phpt b/ext/libxml/tests/004.phpt
index 718f8cbdc202..d5ba2bdb4a89 100644
--- a/ext/libxml/tests/004.phpt
+++ b/ext/libxml/tests/004.phpt
@@ -17,8 +17,8 @@ $ctxs = array(
 foreach ($ctxs as $ctx) {
     try {
         var_dump(libxml_set_streams_context($ctx));
-    } catch (TypeError $e) {
-        echo $e->getMessage(), "\n";
+    } catch (Throwable $e) {
+        echo $e::class, ': ', $e->getMessage(), "\n";
     }
     $dom = new DOMDocument();
     var_dump($dom->load(__DIR__.'/test.xml'));
@@ -28,15 +28,15 @@ echo "Done\n";
 
 ?>
 --EXPECT--
-libxml_set_streams_context(): Argument #1 ($context) must be of type resource, null given
+TypeError: libxml_set_streams_context(): Argument #1 ($context) must be of type resource, null given
 bool(true)
-libxml_set_streams_context(): Argument #1 ($context) must be of type resource, string given
+TypeError: libxml_set_streams_context(): Argument #1 ($context) must be of type resource, string given
 bool(true)
-libxml_set_streams_context(): Argument #1 ($context) must be of type resource, int given
+TypeError: libxml_set_streams_context(): Argument #1 ($context) must be of type resource, int given
 bool(true)
-libxml_set_streams_context(): Argument #1 ($context) must be of type resource, stdClass given
+TypeError: libxml_set_streams_context(): Argument #1 ($context) must be of type resource, stdClass given
 bool(true)
-libxml_set_streams_context(): Argument #1 ($context) must be of type resource, array given
+TypeError: libxml_set_streams_context(): Argument #1 ($context) must be of type resource, array given
 bool(true)
 NULL
 bool(true)
diff --git a/ext/libxml/tests/bug63389.phpt b/ext/libxml/tests/bug63389.phpt
index 90a209e7be12..422e03267dc1 100644
--- a/ext/libxml/tests/bug63389.phpt
+++ b/ext/libxml/tests/bug63389.phpt
@@ -6,18 +6,18 @@ libxml
 <?php
 try {
     libxml_set_streams_context("a");
-} catch (TypeError $e) {
-    echo $e->getMessage(), "\n";
+} catch (Throwable $e) {
+    echo $e::class, ': ', $e->getMessage(), "\n";
 }
 $fp = fopen("php://input", "r");
 try {
     libxml_set_streams_context($fp);
-} catch (TypeError $e) {
-    echo $e->getMessage(), "\n";
+} catch (Throwable $e) {
+    echo $e::class, ': ', $e->getMessage(), "\n";
 }
 echo "okey";
 ?>
 --EXPECT--
-libxml_set_streams_context(): Argument #1 ($context) must be of type resource, string given
-libxml_set_streams_context(): supplied resource is not a valid Stream-Context resource
+TypeError: libxml_set_streams_context(): Argument #1 ($context) must be of type resource, string given
+TypeError: libxml_set_streams_context(): supplied resource is not a valid Stream-Context resource
 okey
diff --git a/ext/libxml/tests/libxml_get_external_entity_loader_error_callback_name.phpt b/ext/libxml/tests/libxml_get_external_entity_loader_error_callback_name.phpt
index 3dca273d5959..d37ada1ab2b3 100644
--- a/ext/libxml/tests/libxml_get_external_entity_loader_error_callback_name.phpt
+++ b/ext/libxml/tests/libxml_get_external_entity_loader_error_callback_name.phpt
@@ -32,9 +32,9 @@ $r = $dd->loadXML($xml);
 try {
     var_dump($dd->validate());
 } catch (\Throwable $e) {
-    var_dump($e->getMessage());
+    echo $e::class, ': ', $e->getMessage(), "\n";
 }
 
 ?>
 --EXPECT--
-string(122) "DOMDocument::validate(): The user entity loader callback "Handler::handle" has returned a resource, but it is not a stream"
+TypeError: DOMDocument::validate(): The user entity loader callback "Handler::handle" has returned a resource, but it is not a stream
diff --git a/ext/libxml/tests/libxml_set_external_entity_loader_error1.phpt b/ext/libxml/tests/libxml_set_external_entity_loader_error1.phpt
index 050aa7830680..1bfc64da26ee 100644
--- a/ext/libxml/tests/libxml_set_external_entity_loader_error1.phpt
+++ b/ext/libxml/tests/libxml_set_external_entity_loader_error1.phpt
@@ -16,12 +16,12 @@ var_dump(libxml_set_external_entity_loader(function($a, $b, $c, $d) {}));
 try {
     var_dump($dd->validate());
 } catch (Throwable $e) {
-    echo "Exception: " . $e->getMessage() . "\n";
+    echo $e::class, ': ', $e->getMessage(), "\n";
 }
 
 echo "Done.\n";
 ?>
 --EXPECTF--
 bool(true)
-Exception: Too few arguments to function {closure:%s:%d}(), 3 passed and exactly 4 expected
+ArgumentCountError: Too few arguments to function {closure:%s:%d}(), 3 passed and exactly 4 expected
 Done.
diff --git a/ext/libxml/tests/libxml_set_external_entity_loader_error2.phpt b/ext/libxml/tests/libxml_set_external_entity_loader_error2.phpt
index 053551f5ff3e..d8c574e86da8 100644
--- a/ext/libxml/tests/libxml_set_external_entity_loader_error2.phpt
+++ b/ext/libxml/tests/libxml_set_external_entity_loader_error2.phpt
@@ -7,8 +7,8 @@ libxml
 try {
 	libxml_set_external_entity_loader('nonexistent_function');
 } catch (Throwable $e) {
-	echo "Exception: " . $e->getMessage() . "\n";
+	echo $e::class, ': ', $e->getMessage(), "\n";
 }
 ?>
 --EXPECT--
-Exception: libxml_set_external_entity_loader(): Argument #1 ($resolver_function) must be a valid callback or null, function "nonexistent_function" not found or invalid function name
+TypeError: libxml_set_external_entity_loader(): Argument #1 ($resolver_function) must be a valid callback or null, function "nonexistent_function" not found or invalid function name
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.