Stop using this in tests.

It will be unsupported in future versions of Jasmine
This commit is contained in:
JC Brand 2022-03-09 12:44:49 +01:00
parent e52056bb33
commit 47b016599e

View File

@ -3,56 +3,56 @@
describe("The _converse Event Emitter", function() { describe("The _converse Event Emitter", function() {
it("allows you to subscribe to emitted events", mock.initConverse((_converse) => { it("allows you to subscribe to emitted events", mock.initConverse((_converse) => {
this.callback = function () {}; window.callback = function () {};
spyOn(this, 'callback'); spyOn(window, 'callback');
_converse.on('connected', this.callback); _converse.on('connected', window.callback);
_converse.api.trigger('connected'); _converse.api.trigger('connected');
expect(this.callback).toHaveBeenCalled(); expect(window.callback).toHaveBeenCalled();
_converse.api.trigger('connected'); _converse.api.trigger('connected');
expect(this.callback.calls.count(), 2); expect(window.callback.calls.count(), 2);
_converse.api.trigger('connected'); _converse.api.trigger('connected');
expect(this.callback.calls.count(), 3); expect(window.callback.calls.count(), 3);
})); }));
it("allows you to listen once for an emitted event", mock.initConverse((_converse) => { it("allows you to listen once for an emitted event", mock.initConverse((_converse) => {
this.callback = function () {}; window.callback = function () {};
spyOn(this, 'callback'); spyOn(window, 'callback');
_converse.once('connected', this.callback); _converse.once('connected', window.callback);
_converse.api.trigger('connected'); _converse.api.trigger('connected');
expect(this.callback).toHaveBeenCalled(); expect(window.callback).toHaveBeenCalled();
_converse.api.trigger('connected'); _converse.api.trigger('connected');
expect(this.callback.calls.count(), 1); expect(window.callback.calls.count(), 1);
_converse.api.trigger('connected'); _converse.api.trigger('connected');
expect(this.callback.calls.count(), 1); expect(window.callback.calls.count(), 1);
})); }));
it("allows you to stop listening or subscribing to an event", mock.initConverse((_converse) => { it("allows you to stop listening or subscribing to an event", mock.initConverse((_converse) => {
this.callback = function () {}; window.callback = function () {};
this.anotherCallback = function () {}; window.anotherCallback = function () {};
this.neverCalled = function () {}; window.neverCalled = function () {};
spyOn(this, 'callback'); spyOn(window, 'callback');
spyOn(this, 'anotherCallback'); spyOn(window, 'anotherCallback');
spyOn(this, 'neverCalled'); spyOn(window, 'neverCalled');
_converse.on('connected', this.callback); _converse.on('connected', window.callback);
_converse.on('connected', this.anotherCallback); _converse.on('connected', window.anotherCallback);
_converse.api.trigger('connected'); _converse.api.trigger('connected');
expect(this.callback).toHaveBeenCalled(); expect(window.callback).toHaveBeenCalled();
expect(this.anotherCallback).toHaveBeenCalled(); expect(window.anotherCallback).toHaveBeenCalled();
_converse.off('connected', this.callback); _converse.off('connected', window.callback);
_converse.api.trigger('connected'); _converse.api.trigger('connected');
expect(this.callback.calls.count(), 1); expect(window.callback.calls.count(), 1);
expect(this.anotherCallback.calls.count(), 2); expect(window.anotherCallback.calls.count(), 2);
_converse.once('connected', this.neverCalled); _converse.once('connected', window.neverCalled);
_converse.off('connected', this.neverCalled); _converse.off('connected', window.neverCalled);
_converse.api.trigger('connected'); _converse.api.trigger('connected');
expect(this.callback.calls.count(), 1); expect(window.callback.calls.count(), 1);
expect(this.anotherCallback.calls.count(), 3); expect(window.anotherCallback.calls.count(), 3);
expect(this.neverCalled).not.toHaveBeenCalled(); expect(window.neverCalled).not.toHaveBeenCalled();
})); }));
}); });