Annotation of embedaddon/php/ext/xml/tests/bug35447.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Bug #35447 (xml_parse_into_struct() chokes on the UTF-8 BOM)
        !             3: --SKIPIF--
        !             4: <?php
        !             5: require_once("skipif.inc");
        !             6: if (! @xml_parser_create_ns('ISO-8859-1')) { die("skip xml_parser_create_ns is not supported on this plattform");}
        !             7: ?>
        !             8: --FILE--
        !             9: <?php
        !            10: $data = <<<END_OF_XML
        !            11: \xEF\xBB\xBF<?xml version="1.0" encoding="utf-8"?\x3e
        !            12: <!DOCTYPE bundle [
        !            13:     <!ELEMENT bundle (resource)+>
        !            14:     <!ELEMENT resource (#PCDATA)>
        !            15:     <!ATTLIST resource
        !            16:               key CDATA #REQUIRED
        !            17:               type (literal|pattern|sub) "literal"
        !            18:               >
        !            19: ]>
        !            20: <resource key="rSeeYou">A bient&amp;244;t</resource>
        !            21: END_OF_XML;
        !            22: 
        !            23: $parser = xml_parser_create_ns('UTF-8');
        !            24: xml_parser_set_option($parser,XML_OPTION_CASE_FOLDING,0);
        !            25: $result = xml_parse_into_struct($parser, $data, $vals, $index);
        !            26: xml_parser_free($parser);
        !            27: var_dump($vals);
        !            28: ?>
        !            29: --EXPECT--
        !            30: array(1) {
        !            31:   [0]=>
        !            32:   array(5) {
        !            33:     ["tag"]=>
        !            34:     string(8) "resource"
        !            35:     ["type"]=>
        !            36:     string(8) "complete"
        !            37:     ["level"]=>
        !            38:     int(1)
        !            39:     ["attributes"]=>
        !            40:     array(2) {
        !            41:       ["key"]=>
        !            42:       string(7) "rSeeYou"
        !            43:       ["type"]=>
        !            44:       string(7) "literal"
        !            45:     }
        !            46:     ["value"]=>
        !            47:     string(13) "A bient&244;t"
        !            48:   }
        !            49: }

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