diff options
Diffstat (limited to 'testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/synthetic-click-inert.html')
-rw-r--r-- | testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/synthetic-click-inert.html | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/synthetic-click-inert.html b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/synthetic-click-inert.html new file mode 100644 index 0000000000..3be8213cd4 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/interactive-elements/the-dialog-element/synthetic-click-inert.html @@ -0,0 +1,40 @@ +<!DOCTYPE html> +<link rel=author href="mailto:jarhar@chromium.org"> +<link rel=author href="mailto:falken@chromium.org"> +<link rel=help href="https://html.spec.whatwg.org/multipage/interactive-elements.html#the-dialog-element"> +<link rel=help href="https://bugs.chromium.org/p/chromium/issues/detail?id=241699"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> + +<style> +dialog { + width: 50px; +} +</style> + +<button>Click me</button> +<div id="div">Click me too</div> +<dialog></dialog> + +<script> +test(() => { + dialog = document.querySelector('dialog'); + dialog.showModal(); + + const button = document.querySelector('button'); + const div = document.getElementById('div'); + let clicked = false; + + [button, div].forEach(function(element) { + element.addEventListener('click', () => clicked = true); + + clicked = false; + element.click(); + assert_true(clicked, 'Calling click() on ' + element.tagName); + + clicked = false; + element.dispatchEvent(new Event('click')); + assert_true(clicked, 'Calling dispatchEvent() on ' + element.tagName); + }); +}, 'Test that inert nodes still get programmatic click events'); +</script> |