summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/accessibility/crashtests/computed-node-checked.html
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/accessibility/crashtests/computed-node-checked.html')
-rw-r--r--testing/web-platform/tests/accessibility/crashtests/computed-node-checked.html49
1 files changed, 49 insertions, 0 deletions
diff --git a/testing/web-platform/tests/accessibility/crashtests/computed-node-checked.html b/testing/web-platform/tests/accessibility/crashtests/computed-node-checked.html
new file mode 100644
index 0000000000..47e715b233
--- /dev/null
+++ b/testing/web-platform/tests/accessibility/crashtests/computed-node-checked.html
@@ -0,0 +1,49 @@
+<!DOCTYPE html>
+<html class="test-wait">
+<body>
+</body>
+<script src="/resources/testharness.js"></script>
+<script>
+if (window.chrome && chrome.gpuBenchmarking) {
+ chrome.gpuBenchmarking.pointerActionSequence(
+ [
+ {
+ source: 'pen',
+ actions: [
+ { name: 'pointerMove', x: 50, y: 50 }
+ ]
+ }
+ ]
+ );
+}
+</script>
+<script>step_timeout(gc, 50);</script>
+<script>
+
+// Bypass this abandoned syntax in all but the engines that implement it.
+if (typeof getComputedAccessibleNode !== 'undefined') {
+
+ const frameElem = document.createElement('iframe');
+
+ frameElem.srcdoc = '<div></div>';
+ frameElem.onload = function() {
+ const frameDoc = frameElem.contentWindow.document;
+ const divElem = frameDoc.querySelector('div');
+ getComputedAccessibleNode(divElem).then(function(divAccessible) {
+ frameElem.remove();
+ requestAnimationFrame(() => {
+ const isChecked = divAccessible.checked;
+ document.documentElement.className = '';
+ });
+ });
+ };
+ document.body.appendChild(frameElem);
+
+} else {
+ // Pass in other engines that have not implemented the abandoned API
+ document.documentElement.className = '';
+}
+
+
+</script>
+</html>