diff options
Diffstat (limited to 'testing/web-platform/tests/html/semantics/forms/textfieldselection/select-event.html')
-rw-r--r-- | testing/web-platform/tests/html/semantics/forms/textfieldselection/select-event.html | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/semantics/forms/textfieldselection/select-event.html b/testing/web-platform/tests/html/semantics/forms/textfieldselection/select-event.html new file mode 100644 index 000000000..92a12d12e --- /dev/null +++ b/testing/web-platform/tests/html/semantics/forms/textfieldselection/select-event.html @@ -0,0 +1,45 @@ +<!DOCTYPE html> +<meta charset=utf-8> +<title>text field selection: select()</title> +<link rel="author" title="Denis Ah-Kang" href="mailto:denis@w3.org"> +<link rel=help href="https://html.spec.whatwg.org/multipage/#textFieldSelection"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<div id="log"></div> +<textarea>foobar</textarea> +<script> + var input_types = ["text", "search", "tel", "url", "password"], + t1 = async_test("select() on textarea queues select event"), + q1 = false; + + input_types.forEach(function(type) { + var input = document.createElement("input"), + t = async_test("select() on input type " + type + " queues select event"), + q = false; + t.step(function() { + input.type = type; + input.value = "foobar"; + document.body.appendChild(input); + input.onselect = t.step_func_done(function(e) { + assert_true(q, "event should be queued"); + assert_true(e.isTrusted, "event is trusted"); + assert_true(e.bubbles, "event bubbles"); + assert_false(e.cancelable, "event is not cancelable"); + }); + input.select(); + q=true; + }); + }); + + document.querySelector("textarea").onselect = t1.step_func_done(function(e) { + assert_true(q1, "event should be queued"); + assert_true(e.isTrusted, "event is trusted"); + assert_true(e.bubbles, "event bubbles"); + assert_false(e.cancelable, "event is not cancelable"); + }); + + t1.step(function() { + document.querySelector("textarea").select(); + q1=true; + }); +</script> |