From 5cea2239d8d671d1269d7ab911f80f2e31b062f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vin=C3=ADcius=20do=20Carmo?= Date: Mon, 23 Jan 2017 14:38:26 -0300 Subject: [PATCH] test: expand test coverage of events.js * test else path in emitMany function * test calling removeAllListeners() in a event emitter instance with no events at all * test calling removeListener() passing a event type that does not exist * test calling eventNames() in a event emitter instance with no events at all Refs: https://coverage.nodejs.org/coverage-ba776b3a56642d4c/root/events.js.html PR-URL: https://github.com/nodejs/node/pull/10947 Reviewed-By: James M Snell Reviewed-By: Michael Dawson Reviewed-By: Gibson Fahnestock --- test/parallel/test-event-emitter-num-args.js | 19 +++++++++++++------ .../test-event-emitter-remove-listeners.js | 6 ++++++ .../test-event-emitter-special-event-names.js | 2 ++ 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/test/parallel/test-event-emitter-num-args.js b/test/parallel/test-event-emitter-num-args.js index d858692aad338e..31e57c89c8f23d 100644 --- a/test/parallel/test-event-emitter-num-args.js +++ b/test/parallel/test-event-emitter-num-args.js @@ -4,15 +4,20 @@ var assert = require('assert'); var events = require('events'); const e = new events.EventEmitter(); -const num_args_emited = []; +const num_args_emitted = []; e.on('numArgs', function() { - var numArgs = arguments.length; - console.log('numArgs: ' + numArgs); - num_args_emited.push(numArgs); + const numArgs = arguments.length; + num_args_emitted.push(numArgs); }); -console.log('start'); +e.on('foo', function() { + num_args_emitted.push(arguments.length); +}); + +e.on('foo', function() { + num_args_emitted.push(arguments.length); +}); e.emit('numArgs'); e.emit('numArgs', null); @@ -21,6 +26,8 @@ e.emit('numArgs', null, null, null); e.emit('numArgs', null, null, null, null); e.emit('numArgs', null, null, null, null, null); +e.emit('foo', null, null, null, null); + process.on('exit', function() { - assert.deepStrictEqual([0, 1, 2, 3, 4, 5], num_args_emited); + assert.deepStrictEqual([0, 1, 2, 3, 4, 5, 4, 4], num_args_emitted); }); diff --git a/test/parallel/test-event-emitter-remove-listeners.js b/test/parallel/test-event-emitter-remove-listeners.js index 55108f753c7a15..2253d20fef0c0b 100644 --- a/test/parallel/test-event-emitter-remove-listeners.js +++ b/test/parallel/test-event-emitter-remove-listeners.js @@ -116,6 +116,12 @@ function listener2() {} ee.emit('hello'); } +{ + const ee = new EventEmitter(); + + assert.deepStrictEqual(ee, ee.removeListener('foo', () => {})); +} + // Verify that the removed listener must be a function assert.throws(() => { const ee = new EventEmitter(); diff --git a/test/parallel/test-event-emitter-special-event-names.js b/test/parallel/test-event-emitter-special-event-names.js index d71d819d3031b2..7ff781f0f90c5a 100644 --- a/test/parallel/test-event-emitter-special-event-names.js +++ b/test/parallel/test-event-emitter-special-event-names.js @@ -7,6 +7,8 @@ const assert = require('assert'); const ee = new EventEmitter(); const handler = () => {}; +assert.deepStrictEqual(ee.eventNames(), []); + assert.strictEqual(ee._events.hasOwnProperty, undefined); assert.strictEqual(ee._events.toString, undefined);