From 71ef5a9cd33390f7f41b80cdb57862b7f7507f76 Mon Sep 17 00:00:00 2001 From: Benjamin Gruenbaum Date: Fri, 4 Dec 2020 19:47:08 +0200 Subject: feat(op_crates/web) EventTarget signal support (#8616) Fixes: https://github.com/denoland/deno/issues/8606 --- op_crates/web/event_test.js | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'op_crates/web/event_test.js') diff --git a/op_crates/web/event_test.js b/op_crates/web/event_test.js index 8107f3bca..00459c442 100644 --- a/op_crates/web/event_test.js +++ b/op_crates/web/event_test.js @@ -106,6 +106,25 @@ function eventIsTrustedGetterName() { assert(e.message.includes("not a constructor")); } } +function eventAbortSignal() { + let count = 0; + function handler() { + count++; + } + const et = new EventTarget(); + const controller = new AbortController(); + et.addEventListener("test", handler, { signal: controller.signal }); + et.dispatchEvent(new Event("test")); + assert(count === 1); + et.dispatchEvent(new Event("test")); + assert(count === 2); + controller.abort(); + et.dispatchEvent(new Event("test")); + assert(count === 2); + et.addEventListener("test", handler, { signal: controller.signal }); + et.dispatchEvent(new Event("test")); + assert(count === 2); +} function main() { eventInitializedWithType(); eventInitializedWithTypeAndDict(); @@ -116,6 +135,7 @@ function main() { eventInitializedWithNonStringType(); eventIsTrusted(); eventIsTrustedGetterName(); + eventAbortSignal(); } main(); -- cgit v1.2.3