public function testDispatchSomeEventsThroughAdHocListener() { $mockTester = $this->getMockBuilder('\\stdClass')->setMethods(array('doSomething'))->getMock(); $mockTester->expects($this->once())->method('doSomething'); $eventDispatcherFactory = new EventDispatcherFactory(); $eventDispatcher = $eventDispatcherFactory->newGenericEventDispatcher(); $eventDispatcher->addListener('notify.bar', new BarListener()); $dispatchContext = new DispatchContext(); $dispatchContext->set('mock', $mockTester); $eventDispatcher->dispatch('notify.bar', $dispatchContext); $eventDispatcher->dispatch('try.notify.empty.listener'); }
private static function newEventDispatcher() { $eventListenerRegistry = new EventListenerRegistry(EventDispatcherFactory::getInstance()->newGenericEventListenerCollection()); $eventDispatcher = EventDispatcherFactory::getInstance()->newGenericEventDispatcher(); $eventDispatcher->addListenerCollection($eventListenerRegistry); return $eventDispatcher; }
public function verifyFactboxCacheDeleteEvent(EventListenerCollection $instance) { $cache = $this->getMockBuilder('\\Onoi\\Cache\\Cache')->disableOriginalConstructor()->getMock(); $title = $this->getMockBuilder('\\Title')->disableOriginalConstructor()->getMock(); $title->expects($this->atLeastOnce())->method('getArticleID')->will($this->returnValue(42)); ApplicationFactory::getInstance()->registerObject('Cache', $cache); $dispatchContext = EventDispatcherFactory::getInstance()->newDispatchContext(); $dispatchContext->set('title', $title); $this->assertListenerExecuteFor('factbox.cache.delete', $instance, $dispatchContext); }
public function verifyPropertyTypeChangeEvent(EventListenerCollection $instance) { $store = $this->getMockBuilder('\\SMW\\Store')->disableOriginalConstructor()->getMockForAbstractClass(); $store->expects($this->atLeastOnce())->method('getProperties')->will($this->returnValue(array())); $store->expects($this->atLeastOnce())->method('getInProperties')->will($this->returnValue(array())); ApplicationFactory::getInstance()->registerObject('Store', $store); $dispatchContext = EventDispatcherFactory::getInstance()->newDispatchContext(); $dispatchContext->set('subject', new DIWikiPage('Foo', NS_MAIN)); $this->assertListenerExecuteFor('property.spec.change', $instance, $dispatchContext); }
public function verifyOnAfterSemanticDataUpdateCompleteEvent(EventListenerCollection $instance) { $dispatchContext = EventDispatcherFactory::getInstance()->newDispatchContext(); $dispatchContext->set('subject', new DIWikiPage('Foo', NS_MAIN)); $this->assertListenerExecuteFor('on.after.semanticdata.update.complete', $instance, $dispatchContext); }
public function testCanConstructGenericEventListenerCollection() { $instance = new EventDispatcherFactory(); $this->assertInstanceOf('\\Onoi\\EventDispatcher\\Listener\\GenericEventListenerCollection', $instance->newGenericEventListenerCollection()); }