Status: FAIL | Duration: 52ms | Subtests: 0/4 | Open test on wpt.live | wpt.fyi
Data from commit:
a50cb89 wpt: run reference-named files which are themselves tests (#836) (2026-09-03)
| Subtest | Status | Message |
|---|---|---|
| elementFromPoint(...) on <rect>s, element at (50, 30) | FAIL | cannot convert 'null' or 'undefined' to object |
| elementFromPoint(...) on <rect>s, element at (60, 40) | FAIL | cannot convert 'null' or 'undefined' to object |
| elementFromPoint(...) on <rect>s, element at (50, 50) | FAIL | cannot convert 'null' or 'undefined' to object |
| elementFromPoint(...) on <rect>s, element at (40, 40) | FAIL | cannot convert 'null' or 'undefined' to object |
/svg/interact/scripted/rect-hittest-001.html
<!DOCTYPE html> <title>elementFromPoint(...) on <rect>s</title> <link rel="help" href="https://w3c.github.io/svgwg/svg2-draft/interact.html#hit-testing"> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> <svg id="svg" width="420" height="300"> <rect id="border" x="0.5" y="0.5" width="419" height="299" stroke="#000" stroke-width="1" fill="none"/> <rect id="rect1" x="40" y="30" width="20" height="20"/> </svg> <script> // Points are relative to the client rect of the <svg> root. const tests = [ // Points on the edge. { x: 50, y: 30, expectedElemId: "rect1" }, { x: 60, y: 40, expectedElemId: "rect1" }, { x: 50, y: 50, expectedElemId: "rect1" }, { x: 40, y: 40, expectedElemId: "rect1" }, ]; setup(() => { const svg = document.getElementById("svg"); const svgBounds = svg.getBoundingClientRect(); window.svgOrigin = { x: svgBounds.left << 0, y: svgBounds.top << 0, }; }); tests.forEach(testcase => { test(t => { const expectedElem = document.getElementById(testcase.expectedElemId); const hitElem = document.elementFromPoint(svgOrigin.x + testcase.x, svgOrigin.y + testcase.y); assert_equals(hitElem, expectedElem); }, `${document.title}, element at (${testcase.x}, ${testcase.y})`); }); </script>