php-src/ext/dom/tests/DOMNode_replaceChild_error2.phpt
Tim Starling 781e6b4d21
Fix O(N) performance of DOMNode::replaceChild() and DOMNode::removeChild()
Don't loop over all children to determine if the target node really is a
child, just trust the parent pointer. Add tests.
2021-09-14 15:30:34 +02:00

20 lines
447 B
PHP

--TEST--
replaceChild() where the new node is a grandparent of the old node
--EXTENSIONS--
dom
--FILE--
<?php
$document = new DOMDocument();
$a = $document->createElement('a');
$b = $document->createElement('b');
$c = $document->createElement('c');
$a->appendChild($b);
$b->appendChild($c);
try {
$b->replaceChild($a, $c);
} catch (DOMException $e) {
echo "DOMException: " . $e->getMessage();
}
--EXPECT--
DOMException: Hierarchy Request Error