Ejemplo n.º 1
0
 public function testListeners()
 {
     $eventManager = new EventManager();
     $eventManager->addListener('event1', function ($e) {
         // some code ...
     }, 2);
     $eventManager->addListener('event1', function ($e) {
         // some code ...
     }, 2);
     $eventManager->addListener('event1', function ($e) {
         // some code ...
     }, 1);
     $eventManager->addListener('event2', function ($e) {
         // some code ...
     });
     $this->assertTrue($eventManager->hasListeners('event1'));
     $this->assertTrue($eventManager->hasListeners('event2'));
     $this->assertFalse($eventManager->hasListeners('event3'));
     include_once __DIR__ . DIRECTORY_SEPARATOR . 'resources' . DIRECTORY_SEPARATOR . 'ListenerForTesting.php';
     $listenerObj = new ListenerForTesting();
     $eventManager->addListenerObject($listenerObj);
     $this->assertTrue($eventManager->hasListeners('event3'));
     $listeners = $eventManager->getListeners('event1');
     // priority levels
     $this->assertEquals(count($listeners), 2);
     $eventManager->removeListeners('event1');
     $this->assertFalse($eventManager->hasListeners('event1'));
 }