mirror of
https://github.com/servo/servo.git
synced 2025-08-26 15:48:22 +01:00
Update web-platform-tests to revision 0d318188757a9c996e20b82db201fd04de5aa255
This commit is contained in:
parent
b2a5225831
commit
1a81b18b9f
12321 changed files with 544385 additions and 6 deletions
|
@ -0,0 +1,112 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<!--
|
||||
Test adapted from https://mxr.mozilla.org/chromium/source/src/third_party/WebKit/LayoutTests/fast/dom/TreeWalker/script-tests/traversal-skip.js
|
||||
-->
|
||||
<head>
|
||||
<title>TreeWalker: traversal-skip</title>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="traversal-support.js"></script>
|
||||
<link rel="stylesheet" href="/resources/testharness.css">
|
||||
<div id=log></div>
|
||||
</head>
|
||||
<body>
|
||||
<p>Test TreeWalker with skipping</p>
|
||||
<script>
|
||||
var testElement;
|
||||
setup(function() {
|
||||
testElement = document.createElement("div");
|
||||
testElement.id = 'root';
|
||||
// testElement.innerHTML='<div id="A1"> <div id="B1"> <div id="C1"></div> </div> <div id="B2"></div><div id="B3"></div> </div>';
|
||||
// <div id="A1">
|
||||
// <div id="B1">
|
||||
// <div id="C1"></div>
|
||||
// </div>
|
||||
// <div id="B2"></div>
|
||||
// <div id="B3"></div>
|
||||
// </div>
|
||||
|
||||
|
||||
// XXX for Servo, build the tree without using innerHTML
|
||||
var a1 = document.createElement("div"); a1.id = "A1";
|
||||
var b1 = document.createElement("div"); b1.id = "B1";
|
||||
var b2 = document.createElement("div"); b2.id = "B2";
|
||||
var b3 = document.createElement("div"); b3.id = "B3";
|
||||
var c1 = document.createElement("div"); c1.id = "C1";
|
||||
|
||||
testElement.appendChild(a1);
|
||||
a1.appendChild(b1);
|
||||
a1.appendChild(b2);
|
||||
a1.appendChild(b3);
|
||||
b1.appendChild(c1);
|
||||
});
|
||||
|
||||
var skipB1Filter = {
|
||||
acceptNode: function(node) {
|
||||
if (node.id == 'B1')
|
||||
return /*NodeFilter.*/FILTER_SKIP;
|
||||
|
||||
return /*NodeFilter.*/FILTER_ACCEPT;
|
||||
}
|
||||
}
|
||||
|
||||
var skipB2Filter = {
|
||||
acceptNode: function(node) {
|
||||
if (node.id == 'B2')
|
||||
return /*NodeFilter.*/FILTER_SKIP;
|
||||
|
||||
return /*NodeFilter.*/FILTER_ACCEPT;
|
||||
}
|
||||
}
|
||||
|
||||
test(function()
|
||||
{
|
||||
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB1Filter);
|
||||
assert_node(walker.nextNode(), { type: Element, id: 'A1' });
|
||||
assert_node(walker.nextNode(), { type: Element, id: 'C1' });
|
||||
assert_node(walker.nextNode(), { type: Element, id: 'B2' });
|
||||
assert_node(walker.nextNode(), { type: Element, id: 'B3' });
|
||||
}, 'Testing nextNode');
|
||||
|
||||
test(function()
|
||||
{
|
||||
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB1Filter);
|
||||
assert_node(walker.firstChild(), { type: Element, id: 'A1' });
|
||||
assert_node(walker.firstChild(), { type: Element, id: 'C1' });
|
||||
}, 'Testing firstChild');
|
||||
|
||||
test(function()
|
||||
{
|
||||
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB2Filter);
|
||||
assert_node(walker.firstChild(), { type: Element, id: 'A1' });
|
||||
assert_node(walker.firstChild(), { type: Element, id: 'B1' });
|
||||
assert_node(walker.nextSibling(), { type: Element, id: 'B3' });
|
||||
}, 'Testing nextSibling');
|
||||
|
||||
test(function()
|
||||
{
|
||||
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB1Filter);
|
||||
walker.currentNode = testElement.querySelectorAll('#C1')[0];
|
||||
assert_node(walker.parentNode(), { type: Element, id: 'A1' });
|
||||
}, 'Testing parentNode');
|
||||
|
||||
test(function()
|
||||
{
|
||||
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB2Filter);
|
||||
walker.currentNode = testElement.querySelectorAll('#B3')[0];
|
||||
assert_node(walker.previousSibling(), { type: Element, id: 'B1' });
|
||||
}, 'Testing previousSibling');
|
||||
|
||||
test(function()
|
||||
{
|
||||
var walker = document.createTreeWalker(testElement, /*NodeFilter.*/SHOW_ELEMENT, skipB1Filter);
|
||||
walker.currentNode = testElement.querySelectorAll('#B3')[0];
|
||||
assert_node(walker.previousNode(), { type: Element, id: 'B2' });
|
||||
assert_node(walker.previousNode(), { type: Element, id: 'C1' });
|
||||
assert_node(walker.previousNode(), { type: Element, id: 'A1' });
|
||||
}, 'Testing previousNode');
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
Loading…
Add table
Add a link
Reference in a new issue