Annotation of embedaddon/php/ext/libxml/tests/libxml_set_external_entity_loader_basic.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: libxml_set_external_entity_loader() basic test
                      3: --SKIPIF--
                      4: <?php if (!extension_loaded('dom')) die('skip'); ?>
                      5: --FILE--
                      6: <?php
                      7: $xml = <<<XML
                      8: <!DOCTYPE foo PUBLIC "-//FOO/BAR" "http://example.com/foobar">
                      9: <foo>bar</foo>
                     10: XML;
                     11: 
                     12: $dtd = <<<DTD
                     13: <!ELEMENT foo (#PCDATA)>
                     14: DTD;
                     15: 
                     16: libxml_set_external_entity_loader(
                     17:        function ($public, $system, $context) use($dtd){
                     18:                var_dump($public);
                     19:                var_dump($system);
                     20:                var_dump($context);
                     21:                $f = fopen("php://temp", "r+");
                     22:                fwrite($f, $dtd);
                     23:                rewind($f);
                     24:                return $f;
                     25:        }
                     26: );
                     27: 
                     28: $dd = new DOMDocument;
                     29: $r = $dd->loadXML($xml);
                     30: var_dump($dd->validate());
                     31: 
                     32: echo "Done.\n";
                     33: 
                     34: --EXPECT--
                     35: string(10) "-//FOO/BAR"
                     36: string(25) "http://example.com/foobar"
                     37: array(4) {
                     38:   ["directory"]=>
                     39:   NULL
                     40:   ["intSubName"]=>
                     41:   NULL
                     42:   ["extSubURI"]=>
                     43:   NULL
                     44:   ["extSubSystem"]=>
                     45:   NULL
                     46: }
                     47: bool(true)
                     48: Done.

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>