diff options
Diffstat (limited to 'test/index_test.ts')
| -rw-r--r-- | test/index_test.ts | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/test/index_test.ts b/test/index_test.ts index 5c25b55..ba1dbff 100644 --- a/test/index_test.ts +++ b/test/index_test.ts @@ -1,4 +1,4 @@ -import mitt, { Emitter } from '..'; +import mitt, { Emitter, EventHandlerMap } from '..'; import chai, { expect } from 'chai'; import { spy } from 'sinon'; import sinonChai from 'sinon-chai'; @@ -15,7 +15,7 @@ describe('mitt', () => { const a = spy(); const b = spy(); map.set('foo', [a, b]); - const events = mitt(map); + const events = mitt<{ foo: undefined }>(map); events.emit('foo'); expect(a).to.have.been.calledOnce; expect(b).to.have.been.calledOnce; @@ -23,9 +23,21 @@ describe('mitt', () => { }); describe('mitt#', () => { - let events, inst: Emitter; - - beforeEach( () => { + const eventType = Symbol('eventType'); + type Events = { + foo: unknown; + constructor: unknown; + FOO: unknown; + bar: unknown; + Bar: unknown; + 'baz:bat!': unknown; + 'baz:baT!': unknown; + Foo: unknown; + [eventType]: unknown; + }; + let events: EventHandlerMap<Events>, inst: Emitter<Events>; + + beforeEach(() => { events = new Map(); inst = mitt(events); }); @@ -83,7 +95,6 @@ describe('mitt#', () => { it('can take symbols for event types', () => { const foo = () => {}; - const eventType = Symbol('eventType'); inst.on(eventType, foo); expect(events.get(eventType)).to.deep.equal([foo]); }); @@ -151,7 +162,7 @@ describe('mitt#', () => { it('should invoke handler for type', () => { const event = { a: 'b' }; - inst.on('foo', (one, two?) => { + inst.on('foo', (one, two?: unknown) => { expect(one).to.deep.equal(event); expect(two).to.be.an('undefined'); }); |
