event-emitters
Version:
39 lines • 1.67 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var EventEmitterWithOptionalCurrent_1 = require("./EventEmitterWithOptionalCurrent");
describe('EventEmitterWithOptionalCurrent', function () {
/* eslint-disable @typescript-eslint/explicit-function-return-type */
it('sends current status when it was provided and listener first subscribes', function () {
var current = 42;
var emitter = new EventEmitterWithOptionalCurrent_1.EventEmitterWithOptionalCurrent(1);
emitter.subscribe(function (newVal) {
current = newVal;
});
expect(current).toEqual(1);
});
it('does not send any status when listener subscribes when no current value was provided', function () {
var current = 42;
var emitter = new EventEmitterWithOptionalCurrent_1.EventEmitterWithOptionalCurrent();
emitter.subscribe(function (newVal) {
current = newVal;
});
expect(current).toEqual(42);
});
it('updates subscribed listener with statuses as they change', function () {
var current = 42;
var emitter = new EventEmitterWithOptionalCurrent_1.EventEmitterWithOptionalCurrent();
emitter.subscribe(function (newVal) {
current = newVal;
});
expect(current).toEqual(42);
var firstVal = 1;
emitter.emit(firstVal);
expect(current).toEqual(firstVal);
var otherValue = 43;
emitter.subscribe(function (newVal) {
otherValue = newVal;
});
expect(otherValue).toEqual(1);
});
});
//# sourceMappingURL=EventEmitterWithOptionalCurrent.spec.js.map