/** * Tests the JApplicationCli::triggerEvents method. * * @return void * * @since 11.3 */ public function testTriggerEvents() { $this->inspector->setClassProperty('dispatcher', null); $this->assertThat($this->inspector->triggerEvent('onJCliTriggerEvent'), $this->isNull(), 'Checks that for a non-dispatcher object, null is returned.'); $this->inspector->setClassProperty('dispatcher', $this->getMockDispatcher()); $this->inspector->registerEvent('onJCliTriggerEvent', 'function'); $this->assertThat($this->inspector->triggerEvent('onJCliTriggerEvent'), $this->equalTo(array('function' => null)), 'Checks the correct dispatcher method is called.'); }
/** * Tests the JApplicationCli::Execute method. * * @return void * * @since 11.3 */ public function testExecute() { // Manually inject the dispatcher. TestReflection::setValue($this->class, 'dispatcher', $this->getMockDispatcher()); // Register all the methods so that we can track if they have been fired. $this->class->registerEvent('onBeforeExecute', 'JWebTestExecute-onBeforeExecute')->registerEvent('JWebDoExecute', 'JWebTestExecute-JWebDoExecute')->registerEvent('onAfterExecute', 'JWebTestExecute-onAfterExecute'); $this->class->execute(); $this->assertEquals(array('onBeforeExecute', 'JWebDoExecute', 'onAfterExecute'), TestMockDispatcher::$triggered, 'Check that events fire in the right order.'); }