summaryrefslogtreecommitdiff
path: root/std/node/events_test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'std/node/events_test.ts')
-rw-r--r--std/node/events_test.ts19
1 files changed, 19 insertions, 0 deletions
diff --git a/std/node/events_test.ts b/std/node/events_test.ts
index 3c3628e3a..4b47686f4 100644
--- a/std/node/events_test.ts
+++ b/std/node/events_test.ts
@@ -246,6 +246,25 @@ test({
});
test({
+ name: "Provide a non-existent event to removeAllListeners will do nothing",
+ fn() {
+ const testEmitter = new EventEmitter();
+ testEmitter.on("event", shouldNeverBeEmitted);
+ testEmitter.on("event", shouldNeverBeEmitted);
+ testEmitter.on("other event", shouldNeverBeEmitted);
+ testEmitter.on("other event", shouldNeverBeEmitted);
+ testEmitter.once("other event", shouldNeverBeEmitted);
+ assertEquals(testEmitter.listenerCount("event"), 2);
+ assertEquals(testEmitter.listenerCount("other event"), 3);
+
+ testEmitter.removeAllListeners("non-existent");
+
+ assertEquals(testEmitter.listenerCount("event"), 2);
+ assertEquals(testEmitter.listenerCount("other event"), 3);
+ },
+});
+
+test({
name: "Remove individual listeners, which can also be chained",
fn() {
const testEmitter = new EventEmitter();