| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 | 
							- <?php
 - 
 - namespace Doctrine\Tests\Common;
 - 
 - use Doctrine\Common\EventManager;
 - use Doctrine\Common\EventArgs;
 - 
 - class EventManagerTest extends \Doctrine\Tests\DoctrineTestCase
 - {
 -     /* Some pseudo events */
 -     const preFoo = 'preFoo';
 -     const postFoo = 'postFoo';
 -     const preBar = 'preBar';
 -     const postBar = 'postBar';
 - 
 -     private $_preFooInvoked = false;
 -     private $_postFooInvoked = false;
 - 
 -     private $_eventManager;
 - 
 -     protected function setUp()
 -     {
 -         $this->_eventManager = new EventManager;
 -         $this->_preFooInvoked = false;
 -         $this->_postFooInvoked = false;
 -     }
 - 
 -     public function testInitialState()
 -     {
 -         $this->assertEquals(array(), $this->_eventManager->getListeners());
 -         $this->assertFalse($this->_eventManager->hasListeners(self::preFoo));
 -         $this->assertFalse($this->_eventManager->hasListeners(self::postFoo));
 -     }
 - 
 -     public function testAddEventListener()
 -     {
 -         $this->_eventManager->addEventListener(array('preFoo', 'postFoo'), $this);
 -         $this->assertTrue($this->_eventManager->hasListeners(self::preFoo));
 -         $this->assertTrue($this->_eventManager->hasListeners(self::postFoo));
 -         $this->assertEquals(1, count($this->_eventManager->getListeners(self::preFoo)));
 -         $this->assertEquals(1, count($this->_eventManager->getListeners(self::postFoo)));
 -         $this->assertEquals(2, count($this->_eventManager->getListeners()));
 -     }
 - 
 -     public function testDispatchEvent()
 -     {
 -         $this->_eventManager->addEventListener(array('preFoo', 'postFoo'), $this);
 -         $this->_eventManager->dispatchEvent(self::preFoo);
 -         $this->assertTrue($this->_preFooInvoked);
 -         $this->assertFalse($this->_postFooInvoked);
 -     }
 - 
 -     public function testRemoveEventListener()
 -     {
 -         $this->_eventManager->addEventListener(array('preBar'), $this);
 -         $this->assertTrue($this->_eventManager->hasListeners(self::preBar));
 -         $this->_eventManager->removeEventListener(array('preBar'), $this);
 -         $this->assertFalse($this->_eventManager->hasListeners(self::preBar));
 -     }
 - 
 -     public function testAddEventSubscriber()
 -     {
 -         $eventSubscriber = new TestEventSubscriber();
 -         $this->_eventManager->addEventSubscriber($eventSubscriber);
 -         $this->assertTrue($this->_eventManager->hasListeners(self::preFoo));
 -         $this->assertTrue($this->_eventManager->hasListeners(self::postFoo));
 -     }
 - 
 -     /* Listener methods */
 - 
 -     public function preFoo(EventArgs $e)
 -     {
 -         $this->_preFooInvoked = true;
 -     }
 - 
 -     public function postFoo(EventArgs $e)
 -     {
 -         $this->_postFooInvoked = true;
 -     }
 - }
 - 
 - class TestEventSubscriber implements \Doctrine\Common\EventSubscriber
 - {
 -     public function getSubscribedEvents()
 -     {
 -         return array('preFoo', 'postFoo');
 -     }
 - }
 
 
  |