public function testAddObserver() { $testEvent = 'testEvent'; $observer = new \Magento\Framework\Event\Observer(); $observer->setData('event_name', $testEvent); $eventName = 'eventName'; $eventMock = $this->getMock('\\Magento\\Framework\\Event', ['getName'], [], '', false, false); $eventMock->setData('name', $eventName); $this->collection->addObserver($observer); $this->assertNotEmpty($this->collection->getEventByName($testEvent)->getObservers()); }
public function dispatch($eventName, array $data = []) { \Magento\Framework\Profiler::start('EVENT:' . $eventName, ['group' => 'EVENT', 'name' => $eventName]); foreach ($this->_eventConfig->getObservers($eventName) as $observerConfig) { $event = new \Magento\Framework\Event($data); $event->setName($eventName); $wrapper = new \Magento\Framework\Event\Observer(); $wrapper->setData(array_merge(['event' => $event], $data)); \Magento\Framework\Profiler::start('OBSERVER:' . $observerConfig['name']); $this->_invoker->dispatch($observerConfig, $wrapper); $this->_devHelper->setObserverDetails($observerConfig, $eventName); \Magento\Framework\Profiler::stop('OBSERVER:' . $observerConfig['name']); } \Magento\Framework\Profiler::stop('EVENT:' . $eventName); }