| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent 2d503b1 commit 7641f9a
3 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,32 +1,38 @@ | |||
| 1 | 1 | 'use strict'; | |
| 2 | 2 | ||
| 3 | 3 | require('../common'); | |
| 4 | - var assert = require('assert'); | ||
| 5 | - var events = require('events'); | ||
| 4 | + const assert = require('assert'); | ||
| 5 | + const events = require('events'); | ||
| 6 | 6 | ||
| 7 | 7 | function listener() {} | |
| 8 | 8 | function listener2() {} | |
| 9 | 9 | ||
| 10 | - var e1 = new events.EventEmitter(); | ||
| 11 | - e1.on('foo', listener); | ||
| 12 | - var fooListeners = e1.listeners('foo'); | ||
| 13 | - assert.deepStrictEqual(e1.listeners('foo'), [listener]); | ||
| 14 | - e1.removeAllListeners('foo'); | ||
| 15 | - assert.deepStrictEqual(e1.listeners('foo'), []); | ||
| 16 | - assert.deepStrictEqual(fooListeners, [listener]); | ||
| 10 | + { | ||
| 11 | + const ee = new events.EventEmitter(); | ||
| 12 | + ee.on('foo', listener); | ||
| 13 | + const fooListeners = ee.listeners('foo'); | ||
| 14 | + assert.deepStrictEqual(ee.listeners('foo'), [listener]); | ||
| 15 | + ee.removeAllListeners('foo'); | ||
| 16 | + assert.deepStrictEqual(ee.listeners('foo'), []); | ||
| 17 | + assert.deepStrictEqual(fooListeners, [listener]); | ||
| 18 | + } | ||
| 17 | 19 | ||
| 18 | - var e2 = new events.EventEmitter(); | ||
| 19 | - e2.on('foo', listener); | ||
| 20 | - var e2ListenersCopy = e2.listeners('foo'); | ||
| 21 | - assert.deepStrictEqual(e2ListenersCopy, [listener]); | ||
| 22 | - assert.deepStrictEqual(e2.listeners('foo'), [listener]); | ||
| 23 | - e2ListenersCopy.push(listener2); | ||
| 24 | - assert.deepStrictEqual(e2.listeners('foo'), [listener]); | ||
| 25 | - assert.deepStrictEqual(e2ListenersCopy, [listener, listener2]); | ||
| 20 | + { | ||
| 21 | + const ee = new events.EventEmitter(); | ||
| 22 | + ee.on('foo', listener); | ||
| 23 | + const eeListenersCopy = ee.listeners('foo'); | ||
| 24 | + assert.deepStrictEqual(eeListenersCopy, [listener]); | ||
| 25 | + assert.deepStrictEqual(ee.listeners('foo'), [listener]); | ||
| 26 | + eeListenersCopy.push(listener2); | ||
| 27 | + assert.deepStrictEqual(ee.listeners('foo'), [listener]); | ||
| 28 | + assert.deepStrictEqual(eeListenersCopy, [listener, listener2]); | ||
| 29 | + } | ||
| 26 | 30 | ||
| 27 | - var e3 = new events.EventEmitter(); | ||
| 28 | - e3.on('foo', listener); | ||
| 29 | - var e3ListenersCopy = e3.listeners('foo'); | ||
| 30 | - e3.on('foo', listener2); | ||
| 31 | - assert.deepStrictEqual(e3.listeners('foo'), [listener, listener2]); | ||
| 32 | - assert.deepStrictEqual(e3ListenersCopy, [listener]); | ||
| 31 | + { | ||
| 32 | + const ee = new events.EventEmitter(); | ||
| 33 | + ee.on('foo', listener); | ||
| 34 | + const eeListenersCopy = ee.listeners('foo'); | ||
| 35 | + ee.on('foo', listener2); | ||
| 36 | + assert.deepStrictEqual(ee.listeners('foo'), [listener, listener2]); | ||
| 37 | + assert.deepStrictEqual(eeListenersCopy, [listener]); | ||
| 38 | + } | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,11 +1,11 @@ | |||
| 1 | 1 | 'use strict'; | |
| 2 | - var common = require('../common'); | ||
| 3 | - var assert = require('assert'); | ||
| 4 | - var events = require('events'); | ||
| 2 | + const common = require('../common'); | ||
| 3 | + const assert = require('assert'); | ||
| 4 | + const events = require('events'); | ||
| 5 | 5 | ||
| 6 | 6 | ||
| 7 | 7 | function expect(expected) { | |
| 8 | - var actual = []; | ||
| 8 | + const actual = []; | ||
| 9 | 9 | process.on('exit', function() { | |
| 10 | 10 | assert.deepStrictEqual(actual.sort(), expected.sort()); | |
| 11 | 11 | }); | |
@@ -17,56 +17,63 @@ function expect(expected) { | |||
| 17 | 17 | ||
| 18 | 18 | function listener() {} | |
| 19 | 19 | ||
| 20 | - var e1 = new events.EventEmitter(); | ||
| 21 | - e1.on('foo', listener); | ||
| 22 | - e1.on('bar', listener); | ||
| 23 | - e1.on('baz', listener); | ||
| 24 | - e1.on('baz', listener); | ||
| 25 | - var fooListeners = e1.listeners('foo'); | ||
| 26 | - var barListeners = e1.listeners('bar'); | ||
| 27 | - var bazListeners = e1.listeners('baz'); | ||
| 28 | - e1.on('removeListener', expect(['bar', 'baz', 'baz'])); | ||
| 29 | - e1.removeAllListeners('bar'); | ||
| 30 | - e1.removeAllListeners('baz'); | ||
| 31 | - assert.deepStrictEqual(e1.listeners('foo'), [listener]); | ||
| 32 | - assert.deepStrictEqual(e1.listeners('bar'), []); | ||
| 33 | - assert.deepStrictEqual(e1.listeners('baz'), []); | ||
| 34 | - // after calling removeAllListeners, | ||
| 35 | - // the old listeners array should stay unchanged | ||
| 36 | - assert.deepStrictEqual(fooListeners, [listener]); | ||
| 37 | - assert.deepStrictEqual(barListeners, [listener]); | ||
| 38 | - assert.deepStrictEqual(bazListeners, [listener, listener]); | ||
| 39 | - // after calling removeAllListeners, | ||
| 40 | - // new listeners arrays are different from the old | ||
| 41 | - assert.notEqual(e1.listeners('bar'), barListeners); | ||
| 42 | - assert.notEqual(e1.listeners('baz'), bazListeners); | ||
| 20 | + { | ||
| 21 | + const ee = new events.EventEmitter(); | ||
| 22 | + ee.on('foo', listener); | ||
| 23 | + ee.on('bar', listener); | ||
| 24 | + ee.on('baz', listener); | ||
| 25 | + ee.on('baz', listener); | ||
| 26 | + const fooListeners = ee.listeners('foo'); | ||
| 27 | + const barListeners = ee.listeners('bar'); | ||
| 28 | + const bazListeners = ee.listeners('baz'); | ||
| 29 | + ee.on('removeListener', expect(['bar', 'baz', 'baz'])); | ||
| 30 | + ee.removeAllListeners('bar'); | ||
| 31 | + ee.removeAllListeners('baz'); | ||
| 32 | + assert.deepStrictEqual(ee.listeners('foo'), [listener]); | ||
| 33 | + assert.deepStrictEqual(ee.listeners('bar'), []); | ||
| 34 | + assert.deepStrictEqual(ee.listeners('baz'), []); | ||
| 35 | + // After calling removeAllListeners(), | ||
| 36 | + // the old listeners array should stay unchanged. | ||
| 37 | + assert.deepStrictEqual(fooListeners, [listener]); | ||
| 38 | + assert.deepStrictEqual(barListeners, [listener]); | ||
| 39 | + assert.deepStrictEqual(bazListeners, [listener, listener]); | ||
| 40 | + // After calling removeAllListeners(), | ||
| 41 | + // new listeners arrays is different from the old. | ||
| 42 | + assert.notEqual(ee.listeners('bar'), barListeners); | ||
| 43 | + assert.notEqual(ee.listeners('baz'), bazListeners); | ||
| 44 | + } | ||
| 43 | 45 | ||
| 44 | - var e2 = new events.EventEmitter(); | ||
| 45 | - e2.on('foo', listener); | ||
| 46 | - e2.on('bar', listener); | ||
| 47 | - // expect LIFO order | ||
| 48 | - e2.on('removeListener', expect(['foo', 'bar', 'removeListener'])); | ||
| 49 | - e2.on('removeListener', expect(['foo', 'bar'])); | ||
| 50 | - e2.removeAllListeners(); | ||
| 51 | - console.error(e2); | ||
| 52 | - assert.deepStrictEqual([], e2.listeners('foo')); | ||
| 53 | - assert.deepStrictEqual([], e2.listeners('bar')); | ||
| 46 | + { | ||
| 47 | + const ee = new events.EventEmitter(); | ||
| 48 | + ee.on('foo', listener); | ||
| 49 | + ee.on('bar', listener); | ||
| 50 | + // Expect LIFO order | ||
| 51 | + ee.on('removeListener', expect(['foo', 'bar', 'removeListener'])); | ||
| 52 | + ee.on('removeListener', expect(['foo', 'bar'])); | ||
| 53 | + ee.removeAllListeners(); | ||
| 54 | + assert.deepStrictEqual([], ee.listeners('foo')); | ||
| 55 | + assert.deepStrictEqual([], ee.listeners('bar')); | ||
| 56 | + } | ||
| 54 | 57 | ||
| 55 | - var e3 = new events.EventEmitter(); | ||
| 56 | - e3.on('removeListener', listener); | ||
| 57 | - // check for regression where removeAllListeners throws when | ||
| 58 | - // there exists a removeListener listener, but there exists | ||
| 59 | - // no listeners for the provided event type | ||
| 60 | - assert.doesNotThrow(e3.removeAllListeners.bind(e3, 'foo')); | ||
| 58 | + { | ||
| 59 | + const ee = new events.EventEmitter(); | ||
| 60 | + ee.on('removeListener', listener); | ||
| 61 | + // Check for regression where removeAllListeners() throws when | ||
| 62 | + // there exists a 'removeListener' listener, but there exists | ||
| 63 | + // no listeners for the provided event type. | ||
| 64 | + assert.doesNotThrow(ee.removeAllListeners.bind(ee, 'foo')); | ||
| 65 | + } | ||
| 61 | 66 | ||
| 62 | - var e4 = new events.EventEmitter(); | ||
| 63 | - var expectLength = 2; | ||
| 64 | - e4.on('removeListener', function(name, listener) { | ||
| 65 | - assert.equal(expectLength--, this.listeners('baz').length); | ||
| 66 | - }); | ||
| 67 | - e4.on('baz', function() {}); | ||
| 68 | - e4.on('baz', function() {}); | ||
| 69 | - e4.on('baz', function() {}); | ||
| 70 | - assert.equal(e4.listeners('baz').length, expectLength + 1); | ||
| 71 | - e4.removeAllListeners('baz'); | ||
| 72 | - assert.equal(e4.listeners('baz').length, 0); | ||
| 67 | + { | ||
| 68 | + const ee = new events.EventEmitter(); | ||
| 69 | + var expectLength = 2; | ||
| 70 | + ee.on('removeListener', function(name, listener) { | ||
| 71 | + assert.strictEqual(expectLength--, this.listeners('baz').length); | ||
| 72 | + }); | ||
| 73 | + ee.on('baz', function() {}); | ||
| 74 | + ee.on('baz', function() {}); | ||
| 75 | + ee.on('baz', function() {}); | ||
| 76 | + assert.strictEqual(ee.listeners('baz').length, expectLength + 1); | ||
| 77 | + ee.removeAllListeners('baz'); | ||
| 78 | + assert.strictEqual(ee.listeners('baz').length, 0); | ||
| 79 | + } | ||
| Back | FazBrowse Home | New Git URL |
0 commit comments