5
class EventEmitterTest extends \PHPUnit_Framework_TestCase {
9
$ee = new EventEmitter();
10
$this->assertInstanceOf('Sabre\\Event\\EventEmitter', $ee);
17
function testHandleEvent() {
21
$ee = new EventEmitter();
22
$ee->on('foo', function($arg) use (&$argResult) {
29
$ee->emit('foo', ['bar'])
32
$this->assertEquals('bar', $argResult);
38
* @depends testHandleEvent
40
function testCancelEvent() {
44
$ee = new EventEmitter();
45
$ee->on('foo', function($arg) use (&$argResult) {
51
$ee->on('foo', function($arg) use (&$argResult) {
59
$ee->emit('foo', ['bar'])
62
$this->assertEquals(1, $argResult);
68
* @depends testCancelEvent
70
function testPriority() {
74
$ee = new EventEmitter();
75
$ee->on('foo', function($arg) use (&$argResult) {
81
$ee->on('foo', function($arg) use (&$argResult) {
90
$ee->emit('foo', ['bar'])
93
$this->assertEquals(2, $argResult);
98
* @depends testPriority
100
function testPriority2() {
103
$ee = new EventEmitter();
105
$ee->on('foo', function() use (&$result) {
110
$ee->on('foo', function() use (&$result) {
115
$ee->on('foo', function() use (&$result) {
120
$ee->on('foo', function() use (&$result) {
127
$this->assertEquals(['b','d','a','c'], $result);
131
function testRemoveListener() {
135
$callBack = function() use (&$result) {
142
$ee = new EventEmitter();
144
$ee->on('foo', $callBack);
147
$this->assertTrue($result);
150
$ee->removeListener('foo', $callBack);
153
$this->assertFalse($result);
157
function testRemoveAllListeners() {
161
$callBack = function() use (&$result) {
168
$ee = new EventEmitter();
170
$ee->on('foo', $callBack);
173
$this->assertTrue($result);
176
$ee->removeAllListeners('foo');
179
$this->assertFalse($result);
183
function testOnce() {
187
$callBack = function() use (&$result) {
193
$ee = new EventEmitter();
194
$ee->once('foo', $callBack);
199
$this->assertEquals(1, $result);