diff options
Diffstat (limited to '')
-rw-r--r-- | testing/web-platform/tests/domxpath/predicates.html | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/testing/web-platform/tests/domxpath/predicates.html b/testing/web-platform/tests/domxpath/predicates.html new file mode 100644 index 0000000000..1786740dbd --- /dev/null +++ b/testing/web-platform/tests/domxpath/predicates.html @@ -0,0 +1,25 @@ +<!DOCTYPE html> +<link rel="help" href="https://www.w3.org/TR/1999/REC-xpath-19991116/#predicates"> +<body> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +function nodesetToSet(result) { + const set = new Set(); + for (let node = result.iterateNext(); node; node = result.iterateNext()) { + set.add(node); + } + return set; +} + +test(() => { + const doc = document.implementation.createHTMLDocument(); + doc.body.innerHTML = '<table></table>' + + '<table><tr><th><th><th><th></table>' + + '<table></table>'; + const result = nodesetToSet(doc.evaluate('(//table)[count((//table)[2]/descendant::th)-1]', doc.documentElement)); + assert_equals(result.size, 1); + assert_true(result.has(doc.body.lastChild)); +}, 'An expression in a predicate should not change the context node'); +</script> +</body> |