diff options
Diffstat (limited to 'ext/libxml')
-rw-r--r-- | ext/libxml/tests/bug69753-mb.phpt | 19 | ||||
-rw-r--r-- | ext/libxml/tests/bug69753私はガラスを食べられます.xml | 4 | ||||
-rw-r--r-- | ext/libxml/tests/libxml_set_external_entity_loader_error1.phpt | 10 |
3 files changed, 29 insertions, 4 deletions
diff --git a/ext/libxml/tests/bug69753-mb.phpt b/ext/libxml/tests/bug69753-mb.phpt new file mode 100644 index 0000000000..eec993ddd2 --- /dev/null +++ b/ext/libxml/tests/bug69753-mb.phpt @@ -0,0 +1,19 @@ +--TEST-- +Bug #69753 - libXMLError::file contains invalid URI +--XFAIL-- +Awaiting upstream fix: https://bugzilla.gnome.org/show_bug.cgi?id=750365 +--SKIPIF-- +<?php +if (substr(PHP_OS, 0, 3) != 'WIN') die("skip this test is for Windows platforms only"); +if (!extension_loaded('dom')) die('skip dom extension not available'); +?> +--FILE-- +<?php +libxml_use_internal_errors(true); +$doc = new DomDocument(); +$doc->load(__DIR__ . DIRECTORY_SEPARATOR . 'bug69753私はガラスを食べられます.xml'); +$error = libxml_get_last_error(); +var_dump($error->file); +?> +--EXPECTF-- +string(%d) "file:///%s/ext/libxml/tests/bug69753.xml" diff --git a/ext/libxml/tests/bug69753私はガラスを食べられます.xml b/ext/libxml/tests/bug69753私はガラスを食べられます.xml new file mode 100644 index 0000000000..63b18d5c6d --- /dev/null +++ b/ext/libxml/tests/bug69753私はガラスを食べられます.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="UTF-8"?> +<root> + <sub> +</root> 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 5ed079d8dd..7f1adde613 100644 --- a/ext/libxml/tests/libxml_set_external_entity_loader_error1.phpt +++ b/ext/libxml/tests/libxml_set_external_entity_loader_error1.phpt @@ -17,7 +17,11 @@ var_dump(libxml_set_external_entity_loader()); var_dump(libxml_set_external_entity_loader(function() {}, 2)); var_dump(libxml_set_external_entity_loader(function($a, $b, $c, $d) {})); -var_dump($dd->validate()); +try { + var_dump($dd->validate()); +} catch (Throwable $e) { + echo "Exception: " . $e->getMessage() . "\n"; +} echo "Done.\n"; @@ -32,8 +36,6 @@ Warning: libxml_set_external_entity_loader() expects exactly 1 parameter, 2 give NULL bool(true) -Warning: Missing argument 4 for {closure}() in %s on line %d - Warning: DOMDocument::validate(): Could not load the external subset "http://example.com/foobar" in %s on line %d -bool(false) +Exception: Too few arguments to function {closure}(), 3 passed and exactly 4 expected Done. |