123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- module('lunr.EventEmitter')
- test('adding an event listener', function () {
- var emitter = new lunr.EventEmitter,
- handler = function () {}
- emitter.addListener('test', handler)
- ok('test' in emitter.events)
- ok(emitter.events.test.indexOf(handler) > -1)
- })
- test('adding a listener to multiple events', function () {
- var emitter = new lunr.EventEmitter,
- handler = function () {}
- emitter.addListener('foo', 'bar', 'baz', handler)
- ok('foo' in emitter.events)
- ok('bar' in emitter.events)
- ok('baz' in emitter.events)
- ok(emitter.events.foo.indexOf(handler) > -1)
- ok(emitter.events.bar.indexOf(handler) > -1)
- ok(emitter.events.baz.indexOf(handler) > -1)
- })
- test('removing a single event listener', function () {
- var emitter = new lunr.EventEmitter,
- handler = function () {}
- emitter.addListener('test', handler)
- ok('test' in emitter.events)
- ok(emitter.events.test.indexOf(handler) > -1)
- emitter.removeListener('test', handler)
- ok(!('test' in emitter.events))
- })
- test('removing a single event listener from many listeners', function () {
- var emitter = new lunr.EventEmitter,
- handler = function () {},
- otherHandler = function () {}
- emitter.addListener('test', handler)
- emitter.addListener('test', otherHandler)
- ok('test' in emitter.events)
- ok(emitter.events.test.indexOf(handler) > -1)
- emitter.removeListener('test', handler)
- ok('test' in emitter.events)
- equal(emitter.events.test.indexOf(handler), -1)
- ok(emitter.events.test.indexOf(otherHandler) > -1)
- })
- test('emitting events', function () {
- var emitter = new lunr.EventEmitter,
- callbackCalled = false,
- callbackArguments = [],
- callback = function () {
- callbackArguments = Array.prototype.slice.call(arguments)
- callbackCalled = true
- }
- emitter.emit('test', 1, 'a')
- emitter.addListener('test', callback)
- emitter.emit('test', 1, 'a')
- ok(callbackCalled)
- deepEqual(callbackArguments, [1, 'a'])
- })
|