40 lines
1.4 KiB
HTML
40 lines
1.4 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<!--
|
|
Test adapted from https://github.com/operasoftware/presto-testo/blob/master/core/standards/acid3/individual/006a.html
|
|
-->
|
|
<head>
|
|
<title>TreeWalker: walking-outside-a-tree</title>
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<script src="support/assert-node.js"></script>
|
|
<div id=log></div>
|
|
</head>
|
|
<body>
|
|
<p>[Acid3 - Test 006a] walking outside a tree</p>
|
|
<script>
|
|
test(function () {
|
|
// test 6: walking outside a tree
|
|
var doc = document.createElement("div");
|
|
var head = document.createElement('head');
|
|
var title = document.createElement('title');
|
|
var body = document.createElement('body');
|
|
var p = document.createElement('p');
|
|
doc.appendChild(head);
|
|
head.appendChild(title);
|
|
doc.appendChild(body);
|
|
body.appendChild(p);
|
|
|
|
var w = document.createTreeWalker(body, 0xFFFFFFFF, null);
|
|
doc.removeChild(body);
|
|
assert_equals(w.lastChild(), p, "TreeWalker failed after removing the current node from the tree");
|
|
doc.appendChild(p);
|
|
assert_equals(w.previousNode(), title, "failed to handle regrafting correctly");
|
|
p.appendChild(body);
|
|
assert_equals(w.nextNode(), p, "couldn't retrace steps");
|
|
assert_equals(w.nextNode(), body, "couldn't step back into root");
|
|
assert_equals(w.previousNode(), null, "root didn't retake its rootish position");
|
|
}, "walking outside a tree");
|
|
</script>
|
|
</body>
|
|
</html>
|