tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit 6c121ee721bdad94f0124f3dd4bc3233f9b3696e
parent c5ed9bb1207bc2859b60af479ca66277a60064da
Author: Simon Wülker <simon.wuelker@arcor.de>
Date:   Fri,  7 Nov 2025 09:02:57 +0000

Bug 1998638 [wpt PR 55906] - xpath: Enforce tree order in node sets during evaluation, a=testonly

Automatic update from web-platform-tests
Add web platform test

Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>

--

wpt-commits: 3bc11def0b88ce80a07313f1e14b35fe96af4c6b
wpt-pr: 55906

Diffstat:
Atesting/web-platform/tests/domxpath/node-set-tree-order.html | 36++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+), 0 deletions(-)

diff --git a/testing/web-platform/tests/domxpath/node-set-tree-order.html b/testing/web-platform/tests/domxpath/node-set-tree-order.html @@ -0,0 +1,36 @@ +<!DOCTYPE html> +<html> +<head> + <title>Tree order of node sets during evaluation</title> + <link rel="author" title="Simon Wülker" href="mailto:simon.wuelker@arcor.de"> + <link rel="help" href="https://github.com/servo/servo/issues/40435"> + <script src="/resources/testharness.js"></script> + <script src="/resources/testharnessreport.js"></script> +</head> +<body> + <div id="container"> + <span></span> + <p id="p"></p> + </div> + <script> + function toArray(result) { + var a = []; + while (true) { + var node = result.iterateNext(); + if (node === null) break; + a.push(node); + } + return a; + } + + let container = document.getElementById("container"); + test(() => { + // If the result of "(./p | ./span)" is not in tree order then "last()" will filter the wrong element, + // causing the span to be returned. + + let result = document.evaluate("(./p | ./span)[last()]", container, null, XPathResult.ORDERED_NODE_ITERATOR_TYPE, null); + assert_array_equals(toArray(result), [document.getElementById("p")]) + }, "Temporary node sets created during evaluation must be in tree order"); + </script> +</body> +</html>