public function testAddListener()
 {
     $config = new ConfigConfig();
     $config->addListener('MyName', 'MyClassName', array('foo' => 'bar'));
     $listeners = $config->getListeners();
     $this->assertArrayHasKey('MyName', $listeners);
     $listener = $listeners['MyName'];
     $this->assertEquals('MyClassName', $listener['className']);
     $this->assertArrayHasKey('foo', $listener['parameters']);
 }
 public function testRegisterByConfig()
 {
     $dispatcher = new Dispatcher();
     $config = new ConfigConfig();
     $config->addListener('myListener', 'Unit\\LiveTest\\Listener\\MockUp', array('foo' => 'bar'));
     $dispatcher->registerByConfig($config, '');
     $listeners = $dispatcher->getListeners('Test');
     $listener = $listeners[0];
     $this->assertTrue($listener[0] instanceof \Unit\LiveTest\Listener\MockUp);
     $this->assertEquals('bar', $listener[0]->getFoo());
 }
Beispiel #3
0
 /**
  * @see LiveTest\Config\Tags\Config.Base::doProcess()
  */
 protected function doProcess(ConfigConfig $config, $parameters)
 {
     foreach ($parameters as $name => $listener) {
         if (!array_key_exists('class', $listener) || $listener['class'] == '') {
             throw new \Exception('The class name for the "' . $name . '" listener is missing. Please check your configuration.');
         }
         if (!array_key_exists('priority', $listener)) {
             $listener['priority'] = 0;
         }
         if (!array_key_exists('parameter', $listener)) {
             $listener['parameter'] = array();
         }
         $config->addListener($name, $listener['class'], $listener['parameter'], $listener['priority']);
     }
 }
Beispiel #4
0
 /**
  * @see LiveTest\Config\Tags\Config.Base::doProcess()
  */
 protected function doProcess(ConfigConfig $config, $parameters)
 {
     $config->addListener('httpListener', 'LiveTest\\Packages\\Http\\Listeners\\ClientConfiguration', $parameters);
 }