Skip to content

Commit 1db89d4

Browse files
matsuda-koushiMylesBorins
authored andcommitted
test: improve coverage on removeListeners functions
PR-URL: #11140 Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Italo A. Casas <[email protected]> Reviewed-By: Michael Dawson <[email protected]>
1 parent c6f6b02 commit 1db89d4

File tree

2 files changed

+33
-0
lines changed

2 files changed

+33
-0
lines changed

test/parallel/test-event-emitter-remove-all-listeners.js

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,3 +77,15 @@ function listener() {}
7777
ee.removeAllListeners('baz');
7878
assert.strictEqual(ee.listeners('baz').length, 0);
7979
}
80+
81+
{
82+
const ee = new events.EventEmitter();
83+
assert.deepStrictEqual(ee, ee.removeAllListeners());
84+
}
85+
86+
{
87+
const ee = new events.EventEmitter();
88+
ee._events = undefined;
89+
assert.strictEqual(ee, ee.removeAllListeners());
90+
}
91+

test/parallel/test-event-emitter-remove-listeners.js

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,3 +115,24 @@ function listener2() {}
115115
}));
116116
ee.emit('hello');
117117
}
118+
119+
{
120+
const ee = new events.EventEmitter();
121+
122+
assert.deepStrictEqual(ee, ee.removeListener('foo', () => {}));
123+
}
124+
125+
// Verify that the removed listener must be a function
126+
assert.throws(() => {
127+
const ee = new events.EventEmitter();
128+
129+
ee.removeListener('foo', null);
130+
}, /^TypeError: listener must be a function$/);
131+
132+
{
133+
const ee = new events.EventEmitter();
134+
const listener = () => {};
135+
ee._events = undefined;
136+
const e = ee.removeListener('foo', listener);
137+
assert.strictEqual(e, ee);
138+
}

0 commit comments

Comments
 (0)