ts-audio
Version:
`ts-audio` is an agnostic and easy-to-use library to work with the `AudioContext` API and create Playlists.
37 lines (27 loc) • 1.01 kB
text/typescript
import { EventEmitter } from '../EventEmitter'
import { EventHandler } from '../EventHandler'
jest.mock('../EventEmitter')
describe('EventHandler', () => {
let mockEmitter: jest.Mocked<EventEmitter>
let eventHandler: EventHandler
beforeEach(() => {
mockEmitter = new EventEmitter() as jest.Mocked<EventEmitter>
mockEmitter.listener = jest.fn()
eventHandler = new EventHandler(mockEmitter)
})
test('registers a callback for the "decoded" event', () => {
const callback = jest.fn()
eventHandler.ready(callback)
expect(mockEmitter.listener).toBeCalledWith('decoded', callback)
})
test('registers a callback for the "start" event', () => {
const callback = jest.fn()
eventHandler.start(callback)
expect(mockEmitter.listener).toBeCalledWith('start', callback)
})
test('registers a callback for the "end" event', () => {
const callback = jest.fn()
eventHandler.end(callback)
expect(mockEmitter.listener).toBeCalledWith('end', callback)
})
})