Esempio n. 1
0
 /**
  * @covers \thebuggenie\core\framework\Event::listen
  * @covers \thebuggenie\core\framework\Event::trigger
  * @covers \thebuggenie\core\framework\Event::triggerUntilProcessed
  * @depends testListening
  */
 public function testTriggeringAndProcessing(\thebuggenie\core\framework\Event $event)
 {
     $this->wastriggered = false;
     \thebuggenie\core\framework\Event::clearListeners('modulename', 'identifier');
     \thebuggenie\core\framework\Event::listen('modulename', 'identifier', array($this, 'listenerCallback'));
     $event->trigger();
     $this->assertAttributeEquals(true, 'wastriggered', $this);
     \thebuggenie\core\framework\Event::clearListeners('modulename', 'identifier');
     \thebuggenie\core\framework\Event::listen('modulename', 'identifier', array($this, 'listenerCallbackNonProcessingFirst'));
     \thebuggenie\core\framework\Event::listen('modulename', 'identifier', array($this, 'listenerCallbackNonProcessingSecond'));
     \thebuggenie\core\framework\Event::listen('modulename', 'identifier', array($this, 'listenerCallbackProcessing'));
     $this->wasprocessed = array();
     $event->triggerUntilProcessed();
     $this->assertAttributeNotEmpty('wasprocessed', $this);
     $this->assertAttributeContains(1, 'wasprocessed', $this);
     $this->assertAttributeContains(2, 'wasprocessed', $this);
     $this->assertAttributeNotContains(3, 'wasprocessed', $this);
 }