ru_php/ext/dom/tests/gh11830/document_variation.phpt

84 lines
1.5 KiB
PHP

--TEST--
GH-11830 (ParentNode methods should perform their checks upfront) - document variation
--EXTENSIONS--
dom
--FILE--
<?php
function test($method) {
$otherDoc = new DOMDocument;
$otherDoc->loadXML(<<<XML
<?xml version="1.0"?>
<other/>
XML);
$otherElement = $otherDoc->documentElement;
$doc = new DOMDocument;
$doc->loadXML(<<<XML
<?xml version="1.0"?>
<container>
<alone/>
<child><testelement/></child>
</container>
XML);
$testElement = $doc->documentElement->firstElementChild->nextElementSibling->firstElementChild;
try {
$doc->documentElement->firstElementChild->$method($testElement, $otherElement);
} catch (\DOMException $e) {
echo $e->getMessage(), "\n";
}
echo $otherDoc->saveXML();
echo $doc->saveXML();
}
test("prepend");
test("append");
test("before");
test("after");
test("replaceWith");
?>
--EXPECT--
Wrong Document Error
<?xml version="1.0"?>
<other/>
<?xml version="1.0"?>
<container>
<alone/>
<child/>
</container>
Wrong Document Error
<?xml version="1.0"?>
<other/>
<?xml version="1.0"?>
<container>
<alone/>
<child/>
</container>
Wrong Document Error
<?xml version="1.0"?>
<other/>
<?xml version="1.0"?>
<container>
<alone/>
<child/>
</container>
Wrong Document Error
<?xml version="1.0"?>
<other/>
<?xml version="1.0"?>
<container>
<alone/>
<child/>
</container>
Wrong Document Error
<?xml version="1.0"?>
<other/>
<?xml version="1.0"?>
<container>
<alone/>
<child/>
</container>