irrelon-emitter
Advanced tools
Comparing version 2.1.2 to 2.1.3
@@ -5,10 +5,16 @@ { | ||
"window": false, | ||
"process": true, | ||
"describe": true, | ||
"it": true, | ||
"beforeEach": true, | ||
"afterEach": true | ||
"process": true | ||
}, | ||
"extends": "eslint:recommended", | ||
"rules": { | ||
"indent": [2, "tab"], | ||
"quotes": [1, "double", {"allowTemplateLiterals": true}], | ||
"sort-keys": 0, | ||
"object-shorthand": 1, | ||
"key-spacing": [1, { | ||
"beforeColon": false, | ||
"afterColon": true, | ||
"mode": "strict" | ||
}], | ||
"quote-props": 1, | ||
"comma-dangle": [2,"never"], | ||
@@ -21,3 +27,3 @@ "no-dupe-args": 2, | ||
"no-unreachable": 1, | ||
"no-unused-vars": 1, | ||
"no-unused-vars": 0, | ||
"no-console": 0, | ||
@@ -32,3 +38,3 @@ "no-mixed-spaces-and-tabs": 1, | ||
"constructor-super": 2, | ||
"prefer-const": 1, | ||
"prefer-const": 2, | ||
"prefer-arrow-callback": 1, | ||
@@ -40,4 +46,3 @@ "semi": [2, "always"], | ||
"asyncArrow": "always" | ||
}], | ||
"complexity": ["error", 5] | ||
}] | ||
}, | ||
@@ -44,0 +49,0 @@ "parserOptions": { |
@@ -5,3 +5,3 @@ { | ||
"description": "Simple JavaScript event emitter.", | ||
"version": "2.1.2", | ||
"version": "2.1.3", | ||
"keywords": [ | ||
@@ -8,0 +8,0 @@ "javascript", |
# Irrelon Emitter | ||
## Version 2.0.12 | ||
## Version 2.1.3 | ||
@@ -5,0 +5,0 @@ ## Usage |
@@ -1,3 +0,4 @@ | ||
const Emitter = require('../dist/Emitter'); | ||
const assert = require('assert'); | ||
const {beforeEach, afterEach, describe, it} = require("mocha"); | ||
const Emitter = require("../dist/Emitter"); | ||
const assert = require("assert"); | ||
@@ -24,4 +25,4 @@ let expectedAssertions = 0; | ||
} | ||
const err = new Error('expected ' + expectedAssertions + ' assertions, got ' + actualAssertions); | ||
this.currentTest.emit('error', err); | ||
const err = new Error("expected " + expectedAssertions + " assertions, got " + actualAssertions); | ||
this.currentTest.emit("error", err); | ||
} | ||
@@ -32,17 +33,17 @@ | ||
describe('Emitter', () => { | ||
it('Creates emitter instance by instantiation', () => { | ||
describe("Emitter", () => { | ||
it("Creates emitter instance by instantiation", () => { | ||
const myClass = new Emitter(); | ||
myClass.on('moo', () => { | ||
myClass.on("moo", () => { | ||
}); | ||
assert.strictEqual(myClass._listeners.moo['*'].length, 1, 'Listener registered on event'); | ||
assert.strictEqual(myClass._listeners.moo["*"].length, 1, "Listener registered on event"); | ||
myClass.off('moo'); | ||
myClass.off("moo"); | ||
assert.strictEqual(!myClass._listeners.moo || myClass._listeners.moo['*'].length, true, 'Listeners all removed from event'); | ||
assert.strictEqual(!myClass._listeners.moo || myClass._listeners.moo["*"].length, true, "Listeners all removed from event"); | ||
}); | ||
it('Emitter.off() removes all listeners from an event', () => { | ||
it("Emitter.off() removes all listeners from an event", () => { | ||
const MyClass = function () { | ||
@@ -55,13 +56,13 @@ }; | ||
myClass.on('moo', () => { | ||
myClass.on("moo", () => { | ||
}); | ||
assert.strictEqual(myClass._listeners.moo['*'].length, 1, 'Listener registered on event'); | ||
assert.strictEqual(myClass._listeners.moo["*"].length, 1, "Listener registered on event"); | ||
myClass.off('moo'); | ||
myClass.off("moo"); | ||
assert.strictEqual(!myClass._listeners.moo || myClass._listeners.moo['*'].length, true, true, 'Listeners all removed from event'); | ||
assert.strictEqual(!myClass._listeners.moo || myClass._listeners.moo["*"].length, true, true, "Listeners all removed from event"); | ||
}); | ||
it('Emitter.emitStatic() static emitter works', (resolve) => { | ||
it("Emitter.emitStatic() static emitter works", (resolve) => { | ||
const MyClass = function () { | ||
@@ -75,4 +76,4 @@ }; | ||
const myClass = new MyClass(); | ||
myClass.emitStatic('moo'); | ||
myClass.on('moo', () => { | ||
myClass.emitStatic("moo"); | ||
myClass.on("moo", () => { | ||
countAssertion(); | ||
@@ -84,3 +85,3 @@ assert.ok(true, "Callback was fired"); | ||
it('Emitter.cancelStatic() removes static emitter', (resolve) => { | ||
it("Emitter.cancelStatic() removes static emitter", (resolve) => { | ||
const MyClass = function () { | ||
@@ -94,4 +95,4 @@ }; | ||
const myClass = new MyClass(); | ||
myClass.emitStatic('moo'); | ||
myClass.on('moo', () => { | ||
myClass.emitStatic("moo"); | ||
myClass.on("moo", () => { | ||
countAssertion(); | ||
@@ -101,4 +102,4 @@ assert.ok(true, "Callback was fired"); | ||
myClass.cancelStatic('moo'); | ||
myClass.on('moo', () => { | ||
myClass.cancelStatic("moo"); | ||
myClass.on("moo", () => { | ||
countAssertion(); | ||
@@ -113,3 +114,3 @@ assert.ok(false, "Callback was fired"); | ||
it('Emitter.one() only fires the last listener added, cancelling all other listeners before it', (resolve) => { | ||
it("Emitter.one() only fires the last listener added, cancelling all other listeners before it", (resolve) => { | ||
const MyClass = function () { | ||
@@ -122,15 +123,15 @@ }; | ||
const myClass = new MyClass(); | ||
myClass.on('moo', () => { | ||
myClass.on("moo", () => { | ||
countAssertion(); | ||
assert.ok(false, "Correct callback was fired"); | ||
}); | ||
myClass.on('moo', () => { | ||
myClass.on("moo", () => { | ||
countAssertion(); | ||
assert.ok(false, "Correct callback was fired"); | ||
}); | ||
myClass.one('moo', () => { | ||
myClass.one("moo", () => { | ||
countAssertion(); | ||
assert.ok(true, "Correct callback was fired"); | ||
}); | ||
myClass.emit('moo'); | ||
myClass.emit("moo"); | ||
@@ -141,2 +142,21 @@ setTimeout(() => { | ||
}); | ||
it("Fires an event correctly using emitId()", () => { | ||
const myClass = new Emitter(); | ||
let emitCount = 0; | ||
myClass.on("moo", "testId", () => { | ||
emitCount++; | ||
}); | ||
assert.strictEqual(myClass._listeners.moo["testId"].length, 1, "Listener registered on event"); | ||
myClass.emitId("moo", "testId", "foo"); | ||
assert.strictEqual(emitCount, 1, "Event fired correctly"); | ||
myClass.off("moo", "testId"); | ||
assert.strictEqual(!myClass._listeners.moo["testId"] || myClass._listeners.moo["testId"].length, true, "Listeners all removed from event"); | ||
}); | ||
}); |
1201746
2467