diff options
Diffstat (limited to 'testing/web-platform/tests/html/semantics/forms/the-input-element/radio-input-cancel.html')
-rw-r--r-- | testing/web-platform/tests/html/semantics/forms/the-input-element/radio-input-cancel.html | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-input-cancel.html b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-input-cancel.html new file mode 100644 index 0000000000..fc2796b041 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/the-input-element/radio-input-cancel.html @@ -0,0 +1,41 @@ +<!DOCTYPE HTML> +<title>Radio input cancel behavior reverts state</title> +<link rel="author" title="jeffcarp" href="mailto:gcarpenterv@gmail.com"> +<link rel="help" href="https://html.spec.whatwg.org/#radio-button-state-(type=radio)"> + +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> + +<body> +<script> +"use strict"; + +test(() => { + const input = document.createElement("input"); + input.type = "radio"; + document.body.appendChild(input); + const events = []; + + input.addEventListener("change", () => { + events.push("change"); + }); + input.addEventListener("click", e => { + // cancel click event + e.preventDefault(); + events.push("click"); + }); + input.addEventListener("input", () => { + events.push("input"); + }); + + assert_false(input.checked); + + input.click(); + + assert_false(input.checked); + + // only click event called + assert_array_equals(events, ["click"]); + +}, "radio input cancel behavior reverts state"); +</script> |