/** * @expectedException \Test\Hooks\EmittedException */ public function testRemoveNonExistingName() { $listener = function () { throw new EmittedException(); }; $this->emitter->listen('Test', 'test', $listener); $this->emitter->removeListener('Bar', 'test', $listener); $this->emitter->emitEvent('Test', 'test'); $this->assertTrue(true); }
/** * @param \OC\Hooks\Emitter $emitter */ protected function forward($emitter) { $this->forwardEmitters[] = $emitter; //forward all previously connected hooks foreach ($this->listeners as $key => $listeners) { list($scope, $method) = explode('::', $key, 2); foreach ($listeners as $listener) { $emitter->listen($scope, $method, $listener); } } }