You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
1.2 KiB
30 lines
1.2 KiB
"use strict";
|
|
/**
|
|
* Copyright (c) 2019, Microsoft Corporation (MIT License).
|
|
*/
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
var assert = require("assert");
|
|
var eventEmitter2_1 = require("./eventEmitter2");
|
|
describe('EventEmitter2', function () {
|
|
it('should fire listeners multiple times', function () {
|
|
var order = [];
|
|
var emitter = new eventEmitter2_1.EventEmitter2();
|
|
emitter.event(function (data) { return order.push(data + 'a'); });
|
|
emitter.event(function (data) { return order.push(data + 'b'); });
|
|
emitter.fire(1);
|
|
emitter.fire(2);
|
|
assert.deepEqual(order, ['1a', '1b', '2a', '2b']);
|
|
});
|
|
it('should not fire listeners once disposed', function () {
|
|
var order = [];
|
|
var emitter = new eventEmitter2_1.EventEmitter2();
|
|
emitter.event(function (data) { return order.push(data + 'a'); });
|
|
var disposeB = emitter.event(function (data) { return order.push(data + 'b'); });
|
|
emitter.event(function (data) { return order.push(data + 'c'); });
|
|
emitter.fire(1);
|
|
disposeB.dispose();
|
|
emitter.fire(2);
|
|
assert.deepEqual(order, ['1a', '1b', '1c', '2a', '2c']);
|
|
});
|
|
});
|
|
//# sourceMappingURL=eventEmitter2.test.js.map
|