Annotation of embedaddon/php/ext/dom/tests/domelement.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Elements: DOMElement functionality
        !             3: --SKIPIF--
        !             4: <?php require_once('skipif.inc'); ?>
        !             5: --FILE--
        !             6: <?php
        !             7: require_once("dom_test.inc");
        !             8: 
        !             9: $dom = new DOMDocument;
        !            10: $dom->loadXML($xmlstr);
        !            11: if(!$dom) {
        !            12:   echo "Error while parsing the document\n";
        !            13:   exit;
        !            14: }
        !            15: 
        !            16: $node = $dom->documentElement;
        !            17: echo "Tag Name: ".$node->tagName."\n";
        !            18: 
        !            19: 
        !            20: $node->setAttribute('num', '1');
        !            21: echo "Chapter: ".$node->getAttribute('num')."\n";
        !            22: echo 'Attribute num exists?: '.($node->hasAttribute('num')?'Yes':'No')."\n";
        !            23: $node->removeAttribute('num');
        !            24: echo "Chapter: ".$node->getAttribute('num')."\n";
        !            25: echo 'Attribute num exists?: '.($node->hasAttribute('num')?'Yes':'No')."\n";
        !            26: 
        !            27: echo "Language: ".$node->getAttribute('language')."\n";
        !            28: $lang = $node->getAttributeNode('language');
        !            29: $lang->nodeValue = 'en-US';
        !            30: $node->setAttributeNode($lang);
        !            31: echo "Language: ".$node->getAttribute('language')."\n";
        !            32: $node->removeAttributeNode($lang);
        !            33: echo "Language: ".$node->getAttribute('language')."\n";
        !            34: 
        !            35: echo "\n-- xml:lang --\n";
        !            36: $node->setAttributeNS('http://www.w3.org/XML/1998/namespace', 'xml:lang', 'en');
        !            37: echo "Language: ".$node->getAttributeNS('http://www.w3.org/XML/1998/namespace', 'lang')."\n";
        !            38: echo 'Attribute xml:lang exists?: '.($node->hasAttributeNS('http://www.w3.org/XML/1998/namespace', 'lang')?'Yes':'No')."\n";
        !            39: 
        !            40: $node->removeAttributeNS('http://www.w3.org/XML/1998/namespace', 'lang');
        !            41: echo "Language: ".$node->getAttributeNS('http://www.w3.org/XML/1998/namespace', 'lang')."\n";
        !            42: echo 'Attribute xml:lang exists?: '.($node->hasAttributeNS('http://www.w3.org/XML/1998/namespace', 'lang')?'Yes':'No')."\n";
        !            43: 
        !            44: $lang = $dom->createAttributeNS('http://www.w3.org/XML/1998/namespace', 'xml:lang');
        !            45: $lang->nodeValue = 'en-GB';
        !            46: $node->setAttributeNodeNS($lang);
        !            47: unset($lang);
        !            48: echo "Language: ".$node->getAttributeNS('http://www.w3.org/XML/1998/namespace', 'lang')."\n";
        !            49: $lang = $node->getAttributeNodeNS('http://www.w3.org/XML/1998/namespace', 'lang');
        !            50: echo "Language: ".$lang->value."\n";
        !            51: 
        !            52: echo "\n-- Elements --\n";
        !            53: $rows = $node->getElementsByTagName('row');
        !            54: echo "Row Count: ".$rows->length."\n";
        !            55: 
        !            56: $element_ns = new DOMElement('newns:myelement', 'default content', 'urn::dummyns');
        !            57: $node->appendChild($element_ns);
        !            58: $element_ns = new DOMElement('newns2:myelement', 'second default content', 'urn::dummyns');
        !            59: $node->appendChild($element_ns);
        !            60: 
        !            61: $myelements = $node->getElementsByTagNameNS('urn::dummyns', 'myelement');
        !            62: $mylen = $myelements->length;
        !            63: echo "myelements Count: ".$mylen."\n";
        !            64: 
        !            65: echo "\n-- IDs --\n";
        !            66: $node->setAttribute('idatt', 'n1');
        !            67: $node->setIdAttribute('idatt', TRUE);
        !            68: 
        !            69: for ($x = 0; $x < $mylen; $x++) {
        !            70:        $current = $myelements->item($x);
        !            71:        $current->setAttributeNS('urn::dummyns', 'newns:idatt', 'n'.($x+2))."\n";
        !            72:        $current->setIdAttributeNS('urn::dummyns', 'idatt', TRUE);
        !            73: }
        !            74: 
        !            75: echo 'Element Name: '.(($elem = $dom->getElementByID('n1'))?$elem->localName:'Not Found')."\n";
        !            76: $idatt = $node->getAttributeNode('idatt');
        !            77: $node->setIdAttributeNode($idatt, FALSE);
        !            78: echo 'Element Name: '.(($elem = $dom->getElementByID('n1'))?$elem->localName:'Not Found')."\n";
        !            79: 
        !            80: echo 'Element Name: '.(($elem = $dom->getElementByID('n3'))?$elem->nodeName:'Not Found')."\n";
        !            81: for ($x = 0; $x < $mylen; $x++) {
        !            82:        $node = $myelements->item($x);
        !            83:        $node->setIdAttributeNS('urn::dummyns', 'idatt', FALSE);
        !            84: }
        !            85: echo 'Element Name: '.(($elem = $dom->getElementByID('n3'))?$elem->nodeName:'Not Found')."\n";
        !            86: ?>
        !            87: --EXPECT--
        !            88: 
        !            89: Tag Name: chapter
        !            90: Chapter: 1
        !            91: Attribute num exists?: Yes
        !            92: Chapter: 
        !            93: Attribute num exists?: No
        !            94: Language: en
        !            95: Language: en-US
        !            96: Language: 
        !            97: 
        !            98: -- xml:lang --
        !            99: Language: en
        !           100: Attribute xml:lang exists?: Yes
        !           101: Language: 
        !           102: Attribute xml:lang exists?: No
        !           103: Language: en-GB
        !           104: Language: en-GB
        !           105: 
        !           106: -- Elements --
        !           107: Row Count: 3
        !           108: myelements Count: 2
        !           109: 
        !           110: -- IDs --
        !           111: Element Name: chapter
        !           112: Element Name: Not Found
        !           113: Element Name: newns2:myelement
        !           114: Element Name: Not Found

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