From: Ant Phillips Date: Mon, 1 Dec 2008 11:30:39 +0000 (+0000) Subject: DOM tests: checked on PHP 5.2.6, 5.3 and 6.0 (Windows, Linux and Linux 64 bit). X-Git-Tag: BEFORE_HEAD_NS_CHANGES_MERGE~34 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0410026ac0725f25e10a946316cf8d5f98bc122f;p=php DOM tests: checked on PHP 5.2.6, 5.3 and 6.0 (Windows, Linux and Linux 64 bit). --- diff --git a/ext/dom/tests/DOMCharacterData_appendData_basic.phpt b/ext/dom/tests/DOMCharacterData_appendData_basic.phpt index 9b37b4443a..ee590de80c 100644 --- a/ext/dom/tests/DOMCharacterData_appendData_basic.phpt +++ b/ext/dom/tests/DOMCharacterData_appendData_basic.phpt @@ -3,8 +3,6 @@ DOMCharacterData::appendData basic functionality test --CREDITS-- Mike Sullivan #TestFest 2008 (London) ---SKIPIF-- - --FILE-- <&" -<&"]]> +<&"]]> \ No newline at end of file diff --git a/ext/dom/tests/DOMComment_appendData_basic.phpt b/ext/dom/tests/DOMComment_appendData_basic.phpt index a5c21f0ad3..c756f1665a 100644 --- a/ext/dom/tests/DOMComment_appendData_basic.phpt +++ b/ext/dom/tests/DOMComment_appendData_basic.phpt @@ -16,6 +16,6 @@ $dom->saveXML(); echo $dom->saveXML(); ?> ---EXPECT-- +--EXPECTF-- - + \ No newline at end of file diff --git a/ext/dom/tests/DOMComment_appendData_basic_Sullivan.phpt b/ext/dom/tests/DOMComment_appendData_basic_Sullivan.phpt index 4d39ea4695..b7d90a1194 100644 --- a/ext/dom/tests/DOMComment_appendData_basic_Sullivan.phpt +++ b/ext/dom/tests/DOMComment_appendData_basic_Sullivan.phpt @@ -3,8 +3,6 @@ DOMComment::appendData basic functionality test --CREDITS-- Mike Sullivan #TestFest 2008 (London) ---SKIPIF-- - --FILE-- <&" - + \ No newline at end of file diff --git a/ext/dom/tests/DOMComment_insertData_basic.phpt b/ext/dom/tests/DOMComment_insertData_basic.phpt index 16fa55e40d..5a4857d677 100644 --- a/ext/dom/tests/DOMComment_insertData_basic.phpt +++ b/ext/dom/tests/DOMComment_insertData_basic.phpt @@ -16,6 +16,6 @@ $dom->appendChild($comment); echo $dom->saveXML(); ?> ---EXPECT-- +--EXPECTF-- diff --git a/ext/dom/tests/DOMComment_insertData_error1.phpt b/ext/dom/tests/DOMComment_insertData_error1.phpt index bd72642e33..56922ac518 100644 --- a/ext/dom/tests/DOMComment_insertData_error1.phpt +++ b/ext/dom/tests/DOMComment_insertData_error1.phpt @@ -20,5 +20,5 @@ try { } ?> ---EXPECT-- +--EXPECTF-- Throws DOMException for -ve offset diff --git a/ext/dom/tests/DOMComment_insertData_error2.phpt b/ext/dom/tests/DOMComment_insertData_error2.phpt index 73911cc368..d2affa89e7 100644 --- a/ext/dom/tests/DOMComment_insertData_error2.phpt +++ b/ext/dom/tests/DOMComment_insertData_error2.phpt @@ -20,5 +20,5 @@ try { } ?> ---EXPECT-- -Throws DOMException for offset too large +--EXPECTF-- +Throws DOMException for offset too large \ No newline at end of file diff --git a/ext/dom/tests/DOMComment_replaceData_basic.phpt b/ext/dom/tests/DOMComment_replaceData_basic.phpt index 0d1b1a9c9c..10bf677ff3 100644 --- a/ext/dom/tests/DOMComment_replaceData_basic.phpt +++ b/ext/dom/tests/DOMComment_replaceData_basic.phpt @@ -4,7 +4,7 @@ Test replacing data into a DOMComment basic test Andrew Larssen London TestFest 2008 --SKIPIF-- - + --FILE-- appendChild($comment); echo $dom->saveXML(); ?> ---EXPECT-- +--EXPECTF-- diff --git a/ext/dom/tests/DOMComment_replaceData_error1.phpt b/ext/dom/tests/DOMComment_replaceData_error1.phpt index 16ea993e34..4ae4cb61da 100644 --- a/ext/dom/tests/DOMComment_replaceData_error1.phpt +++ b/ext/dom/tests/DOMComment_replaceData_error1.phpt @@ -20,5 +20,5 @@ try { } ?> ---EXPECT-- +--EXPECTF-- Throws DOMException for -ve offest diff --git a/ext/dom/tests/DOMComment_replaceData_error2.phpt b/ext/dom/tests/DOMComment_replaceData_error2.phpt index fbf59d76dc..89614f9756 100644 --- a/ext/dom/tests/DOMComment_replaceData_error2.phpt +++ b/ext/dom/tests/DOMComment_replaceData_error2.phpt @@ -20,5 +20,5 @@ try { } ?> ---EXPECT-- -Throws DOMException for offest too large +--EXPECTF-- +Throws DOMException for offest too large \ No newline at end of file diff --git a/ext/dom/tests/DOMDocumentFragment_appendXML_hasChildNodes_basic.phpt b/ext/dom/tests/DOMDocumentFragment_appendXML_hasChildNodes_basic.phpt index c82a73b526..d6fb632132 100644 --- a/ext/dom/tests/DOMDocumentFragment_appendXML_hasChildNodes_basic.phpt +++ b/ext/dom/tests/DOMDocumentFragment_appendXML_hasChildNodes_basic.phpt @@ -1,7 +1,5 @@ --TEST-- Testing DOMDocumentFragment::appendXML and DOMDocumentFragment::hasChildNodes ---SKIPIF-- - --FILE-- --FILE-- saveXML(); --EXPECT-- + diff --git a/ext/dom/tests/DOMDocument_createAttribute_error.phpt b/ext/dom/tests/DOMDocument_createAttribute_error.phpt index da2a967c3a..3b318d40d2 100644 --- a/ext/dom/tests/DOMDocument_createAttribute_error.phpt +++ b/ext/dom/tests/DOMDocument_createAttribute_error.phpt @@ -1,7 +1,5 @@ --TEST-- Test DOMDocument::createAttribute() for expected expection thrown when wrong parameter passed ---SKIPIF-- - --FILE-- ---EXPECT-- +--EXPECTF-- PASS diff --git a/ext/dom/tests/DOMDocument_createAttribute_error1.phpt b/ext/dom/tests/DOMDocument_createAttribute_error1.phpt index 9a1cba4813..153b18b5a2 100644 --- a/ext/dom/tests/DOMDocument_createAttribute_error1.phpt +++ b/ext/dom/tests/DOMDocument_createAttribute_error1.phpt @@ -3,8 +3,6 @@ DomDocument::createAttribute() - error test for DomDocument::createAttribute() --CREDITS-- Muhammad Khalid Adnan # TestFest 2008 ---SKIPIF-- - --FILE-- --EXPECT-- Test failed! + diff --git a/ext/dom/tests/DOMDocument_createAttribute_variation.phpt b/ext/dom/tests/DOMDocument_createAttribute_variation.phpt index a5f3dcd041..f00493455c 100644 --- a/ext/dom/tests/DOMDocument_createAttribute_variation.phpt +++ b/ext/dom/tests/DOMDocument_createAttribute_variation.phpt @@ -1,7 +1,5 @@ --TEST-- Test DOMDocument::createAttribute() for expected return value ---SKIPIF-- - --FILE-- createAttribute('string'); echo get_class($attr); ?> ---EXPECT-- +--EXPECTF-- DOMAttr diff --git a/ext/dom/tests/DOMDocument_createProcessingInstruction_basic.phpt b/ext/dom/tests/DOMDocument_createProcessingInstruction_basic.phpt index 9f45f125d5..ea0910417c 100644 --- a/ext/dom/tests/DOMDocument_createProcessingInstruction_basic.phpt +++ b/ext/dom/tests/DOMDocument_createProcessingInstruction_basic.phpt @@ -3,8 +3,6 @@ DomDocument::createProcessingInstruction() - basic test for DomDocument::createP --CREDITS-- Muhammad Khalid Adnan # TestFest 2008 ---SKIPIF-- - --FILE-- --FILE-- loadHTML("

Test

"); echo $doc->saveHTML(); ?> ---EXPECT-- +--EXPECTF--

Test

diff --git a/ext/dom/tests/DOMDocument_save_basic.phpt b/ext/dom/tests/DOMDocument_save_basic.phpt index bcad72dce5..c7d1ead24b 100644 --- a/ext/dom/tests/DOMDocument_save_basic.phpt +++ b/ext/dom/tests/DOMDocument_save_basic.phpt @@ -28,5 +28,6 @@ echo 'Wrote: ' . $doc->save($temp_filename) . ' bytes'; // Wrote: 72 bytes $temp_filename = dirname(__FILE__)."/DomDocument_save_basic.tmp"; unlink($temp_filename); ?> ---EXPECT-- +--EXPECTF-- Wrote: 72 bytes + diff --git a/ext/dom/tests/DOMElement_hasAttributes_basic.phpt b/ext/dom/tests/DOMElement_hasAttributes_basic.phpt index 8e38d935e7..f0d0c355b8 100644 --- a/ext/dom/tests/DOMElement_hasAttributes_basic.phpt +++ b/ext/dom/tests/DOMElement_hasAttributes_basic.phpt @@ -3,8 +3,6 @@ DOMNode: hasAttributes() --CREDITS-- James Lewis #TestFest 2008 ---SKIPIF-- - --FILE-- +--CREDITS-- +Simon Hughes +--FILE-- + + + + + c1n1 + c1n2 + + + + + c2n1 + c2n2 + + + +EOXML; + +function dumpcourse($current) { + $title = ($current->nodeType != XML_TEXT_NODE && $current->hasAttribute('title')) ? $current->getAttribute('title'):"no title"; + echo "Course: $title:";var_dump($current); + echo "~";var_dump($current->textContent); +} + +$dom = new DOMDocument(); +$dom->loadXML($xml); +$root = $dom->documentElement; + +// strip all text nodes from this tree +$children = $root->childNodes; +$len = $children->length; +for ($index = $children->length - 1; $index >=0; $index--) { + $current = $children->item($index); + if ($current->nodeType == XML_TEXT_NODE) { + $noderemoved = $root->removeChild($current); + } +} + +echo "Start cloneNode test\n"; +$first_course = $children->item(0); +$cloned_first_course_default = $first_course->cloneNode(); +$first_course->setAttribute('title', 'new title1'); + +$cloned_first_course_true = $first_course->cloneNode(true); +$first_course->setAttribute('title', 'new title2'); + +$cloned_first_course_false = $first_course->cloneNode(false); +$first_course->setAttribute('title', 'new title3'); + +$cloned_first_course_default->setAttribute('title', 'new title default'); +$cloned_first_course_true->setAttribute('title', 'new title true'); +$cloned_first_course_false->setAttribute('title', 'new title false'); + +$root->appendChild($cloned_first_course_default); +$root->appendChild($cloned_first_course_true); +$root->appendChild($cloned_first_course_false); + +$children = $root->childNodes; +for ($index = 0; $index < $children->length; $index++) { + echo "node $index\n"; + dumpcourse($children->item($index)); +} + +--EXPECTF-- +Start cloneNode test +node 0 +Course: new title3:object(DOMElement)#6 (0) { +} +~unicode(24) " + + c1n1 + c1n2 + + " +node 1 +Course: two:object(DOMElement)#3 (0) { +} +~unicode(24) " + + c2n1 + c2n2 + + " +node 2 +Course: new title default:object(DOMElement)#4 (0) { +} +~unicode(0) "" +node 3 +Course: new title true:object(DOMElement)#7 (0) { +} +~unicode(24) " + + c1n1 + c1n2 + + " +node 4 +Course: new title false:object(DOMElement)#8 (0) { +} +~unicode(0) "" \ No newline at end of file diff --git a/ext/dom/tests/DOMNode_hasChildNodes_basic.phpt b/ext/dom/tests/DOMNode_hasChildNodes_basic.phpt index e303110bef..3a6f6b4218 100644 --- a/ext/dom/tests/DOMNode_hasChildNodes_basic.phpt +++ b/ext/dom/tests/DOMNode_hasChildNodes_basic.phpt @@ -37,7 +37,7 @@ echo "Text has child nodes: "; var_dump($text->hasChildNodes()); ?> ---EXPECT-- +--EXPECTF-- Root has child nodes: bool(true) Title has child nodes: bool(true) -Text has child nodes: bool(false) +Text has child nodes: bool(false) \ No newline at end of file diff --git a/ext/dom/tests/DOMNode_issamenode_basic.phpt b/ext/dom/tests/DOMNode_issamenode_basic.phpt index 55886e3ec4..beccb8fb62 100644 --- a/ext/dom/tests/DOMNode_issamenode_basic.phpt +++ b/ext/dom/tests/DOMNode_issamenode_basic.phpt @@ -3,8 +3,6 @@ DOMNode: isSameNode() --CREDITS-- James Lewis #TestFest 2008 ---SKIPIF-- - --FILE-- +===DONE=== --EXPECT-- EXPECTING SAME NODE, PASSED EXPECTING NOT SAME NODE, PASSED +===DONE=== diff --git a/ext/dom/tests/DOMNode_normalize_basic.phpt b/ext/dom/tests/DOMNode_normalize_basic.phpt index fce6b289bd..79f5294d63 100644 --- a/ext/dom/tests/DOMNode_normalize_basic.phpt +++ b/ext/dom/tests/DOMNode_normalize_basic.phpt @@ -1,15 +1,15 @@ --TEST-- -DomNode::normalize() +normalize() --SKIPIF-- --FILE-- - + * * * This is the title * @@ -57,8 +57,8 @@ echo "Number of child nodes of title after normalizing title = "; var_dump($title->childNodes->length); ?> ---EXPECT-- +--EXPECTF-- Number of child nodes of title = int(1) Number of child nodes of title after adding second title = int(2) Number of child nodes of title after normalizing author = int(2) -Number of child nodes of title after normalizing title = int(1) +Number of child nodes of title after normalizing title = int(1) \ No newline at end of file diff --git a/ext/dom/tests/DOMNode_removeChild_basic.phpt b/ext/dom/tests/DOMNode_removeChild_basic.phpt new file mode 100644 index 0000000000..3e60b4ba1a --- /dev/null +++ b/ext/dom/tests/DOMNode_removeChild_basic.phpt @@ -0,0 +1,113 @@ +--TEST-- +DOM removeChild : Basic Functionality +--SKIPIF-- + +--CREDITS-- +Simon Hughes +--FILE-- + + + + + c1n1 + c1n2 + + + + + c2n1 + c2n2 + + + +EOXML; + +function dumpcourse($current) { + $title = ($current->nodeType != XML_TEXT_NODE && $current->hasAttribute('title')) ? $current->getAttribute('title'):"no title"; + echo "Course: $title:";var_dump($current); + echo "~";var_dump($current->textContent); +} + +$dom = new DOMDocument(); +$dom->loadXML($xml); +$root = $dom->documentElement; + +$children = $root->childNodes; +$len = $children->length; +echo "orignal has $len nodes\n"; +for ($index = $children->length - 1; $index >=0; $index--) { + echo "node $index\n"; + $current = $children->item($index); + dumpcourse($current); + if ($current->nodeType == XML_TEXT_NODE) { + $noderemoved = $root->removeChild($current); + } +} +$children = $root->childNodes; +$len = $children->length; +echo "after text removed it now has $len nodes\n"; +for ($index = 0; $index < $children->length; $index++) { + echo "node $index\n"; + $current = $children->item($index); + dumpcourse($current); +} + +--EXPECTF-- +orignal has 5 nodes +node 4 +Course: no title:object(DOMText)#4 (0) { +} +~unicode(1) " +" +node 3 +Course: two:object(DOMElement)#5 (0) { +} +~unicode(24) " + + c2n1 + c2n2 + + " +node 2 +Course: no title:object(DOMText)#6 (0) { +} +~unicode(2) " + " +node 1 +Course: one:object(DOMElement)#4 (0) { +} +~unicode(24) " + + c1n1 + c1n2 + + " +node 0 +Course: no title:object(DOMText)#5 (0) { +} +~unicode(2) " + " +after text removed it now has 2 nodes +node 0 +Course: one:object(DOMElement)#3 (0) { +} +~unicode(24) " + + c1n1 + c1n2 + + " +node 1 +Course: two:object(DOMElement)#4 (0) { +} +~unicode(24) " + + c2n1 + c2n2 + + " \ No newline at end of file diff --git a/ext/dom/tests/DOMText_appendData_basic.phpt b/ext/dom/tests/DOMText_appendData_basic.phpt index 72d0d6ca94..6a28a9ae45 100644 --- a/ext/dom/tests/DOMText_appendData_basic.phpt +++ b/ext/dom/tests/DOMText_appendData_basic.phpt @@ -3,8 +3,6 @@ DOMText::appendData basic functionality test --CREDITS-- Mike Sullivan #TestFest 2008 (London) ---SKIPIF-- - --FILE-- <&" -data><&" +data><&" \ No newline at end of file diff --git a/ext/dom/tests/bug42082.phpt b/ext/dom/tests/bug42082.phpt index 646d2a37cf..d1820c361a 100644 --- a/ext/dom/tests/bug42082.phpt +++ b/ext/dom/tests/bug42082.phpt @@ -1,7 +1,5 @@ --TEST-- Bug #42082 (NodeList length zero should be empty) ---SKIPIF-- - --FILE-- +$xmlstr = " ]>