tizen beta release
[framework/web/webkit-efl.git] / LayoutTests / fast / dom / SelectorAPI / resources / id-fastpath-strict.js
1 description(
2 "This tests that the querySelector and querySelectorAll fast path for IDs is not overzelous."
3 );
4
5 var root = document.createElement('div');
6 var correctNode = document.createElement('div');
7 correctNode.setAttribute("id", "testId")
8 root.appendChild(correctNode);
9 document.body.appendChild(root);
10
11
12 shouldBe("document.querySelector('#testId')", "correctNode");
13 shouldBe("document.querySelector('div#testId')", "correctNode");
14 shouldBeNull("document.querySelector('ul#testId')");
15 shouldBeNull("document.querySelector('ul #testId')");
16 shouldBeNull("document.querySelector('#testId[attr]')");
17 shouldBeNull("document.querySelector('#testId:not(div)')");
18
19 shouldBe("document.querySelectorAll('div#testId').length", "1");
20 shouldBe("document.querySelectorAll('div#testId').item(0)", "correctNode");
21 shouldBe("document.querySelectorAll('#testId').length", "1");
22 shouldBe("document.querySelectorAll('#testId').item(0)", "correctNode");
23 shouldBe("document.querySelectorAll('ul#testId').length", "0");
24 shouldBe("document.querySelectorAll('ul #testId').length", "0");
25 shouldBe("document.querySelectorAll('#testId[attr]').length", "0");
26 shouldBe("document.querySelectorAll('#testId:not(div)').length", "0");