예제 #1
0
 /**
  * Test getting a list of dispatched events from the manager.
  *
  * @return void
  * @triggers my_event $this
  * @triggers my_second_event $this
  */
 public function testGetDispatchedEvents()
 {
     $eventList = new EventList();
     $event = new Event('my_event', $this);
     $event2 = new Event('my_second_event', $this);
     $manager = new EventManager();
     $manager->setEventList($eventList);
     $manager->dispatch($event);
     $manager->dispatch($event2);
     $result = $manager->getEventList();
     $this->assertInstanceOf('\\Cake\\Event\\EventList', $result);
     $this->assertCount(2, $result);
     $this->assertEquals($result[0], $event);
     $this->assertEquals($result[1], $event2);
     $manager->getEventList()->flush();
     $result = $manager->getEventList();
     $this->assertCount(0, $result);
     $manager->unsetEventList();
     $manager->dispatch($event);
     $manager->dispatch($event2);
     $result = $manager->getEventList();
     $this->assertNull($result);
 }
예제 #2
0
 /**
  * tests assertEventFired
  *
  * @return void
  */
 public function testEventFired()
 {
     $manager = EventManager::instance();
     $manager->setEventList(new EventList());
     $manager->trackEvents(true);
     $event = new Event('my.event');
     $manager->dispatch($event);
     $this->assertEventFired('my.event');
     $manager = new EventManager();
     $manager->setEventList(new EventList());
     $manager->trackEvents(true);
     $event = new Event('my.event');
     $manager->dispatch($event);
     $this->assertEventFired('my.event', $manager);
 }