Example #1
0
 /**
  * イベントをディスパッチする
  */
 public function fire($tag, $params = [], $subject = null)
 {
     if (!$tag instanceof EventIF) {
         if ($subject === null) {
             $subject = $this->_event_subject;
         }
         $ev = Event::Create($this->filterEventTag($tag, $subject), $params, $subject);
         return $this->dispatch($ev);
     }
     $ev = $tag;
     return $this->EventManager()->dispatch($ev);
 }
Example #2
0
 /**
  * @depends testCreate
  * @covers ::on
  * @covers ::dispatch
  */
 public function testOn($em)
 {
     $em->on('test', function () {
         $this->assertTrue(false);
         $this->cnt++;
     });
     $em->on('test', function ($ev) {
         $this->cnt++;
         $ev->stopPropagation();
     });
     $em->on('test', function () {
         $this->cnt++;
     });
     $em->dispatch(Event::Create('test'));
     $this->assertEquals(2, $this->cnt);
     $em->dispatch(Event::Create('test', [], $this));
     return $em;
 }