Annotation of embedaddon/php/ext/dom/tests/bug32615.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Bug #32615 (Replacing and inserting Fragments)
                      3: --SKIPIF--
                      4: <?php require_once('skipif.inc'); ?>
                      5: --FILE--
                      6: <?php
                      7: $dom = new DomDocument;
                      8: $frag = $dom->createDocumentFragment();
                      9: $frag->appendChild(new DOMElement('root'));
                     10: $dom->appendChild($frag);
                     11: $root = $dom->documentElement;
                     12: 
                     13: $frag->appendChild(new DOMElement('first'));
                     14: $root->appendChild($frag);
                     15: 
                     16: $frag->appendChild(new DOMElement('second'));
                     17: $root->appendChild($frag);
                     18: 
                     19: $node = $dom->createElement('newfirst');
                     20: $frag->appendChild($node);
                     21: $root->replaceChild($frag, $root->firstChild);
                     22: 
                     23: unset($frag);
                     24: $frag = $dom->createDocumentFragment();
                     25: 
                     26: $frag->appendChild(new DOMElement('newsecond'));
                     27: $root->replaceChild($frag, $root->lastChild);
                     28: 
                     29: $node = $frag->appendChild(new DOMElement('fourth'));
                     30: $root->insertBefore($frag, NULL);
                     31: 
                     32: $frag->appendChild(new DOMElement('third'));
                     33: $node = $root->insertBefore($frag, $node);
                     34: 
                     35: $frag->appendChild(new DOMElement('start'));
                     36: $root->insertBefore($frag, $root->firstChild);
                     37: 
                     38: $frag->appendChild(new DOMElement('newthird'));
                     39: $root->replaceChild($frag, $node);
                     40: 
                     41: $frag->appendChild(new DOMElement('newfourth'));
                     42: $root->replaceChild($frag, $root->lastChild);
                     43: 
                     44: $frag->appendChild(new DOMElement('first'));
                     45: $root->replaceChild($frag, $root->firstChild->nextSibling);
                     46: 
                     47: $root->removeChild($root->firstChild);
                     48: 
                     49: echo $dom->saveXML()."\n";
                     50: 
                     51: while ($root->hasChildNodes()) {
                     52:    $root->removeChild($root->firstChild);
                     53: }
                     54: 
                     55: $frag->appendChild(new DOMElement('first'));
                     56: $root->insertBefore($frag, $root->firstChild);
                     57: 
                     58: $node = $frag->appendChild(new DOMElement('fourth'));
                     59: $root->appendChild($frag);
                     60: 
                     61: $frag->appendChild(new DOMElement('second'));
                     62: $frag->appendChild(new DOMElement('third'));
                     63: $root->insertBefore($frag, $node);
                     64: 
                     65: echo $dom->saveXML()."\n";
                     66: 
                     67: $frag = $dom->createDocumentFragment();
                     68: $root = $dom->documentElement;
                     69: $root->replaceChild($frag, $root->firstChild);
                     70: 
                     71: echo $dom->saveXML();
                     72: 
                     73: ?>
                     74: --EXPECT--
                     75: 
                     76: <?xml version="1.0"?>
                     77: <root><first/><newsecond/><newthird/><newfourth/></root>
                     78: 
                     79: <?xml version="1.0"?>
                     80: <root><first/><second/><third/><fourth/></root>
                     81: 
                     82: <?xml version="1.0"?>
                     83: <root><second/><third/><fourth/></root>
                     84: 

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