/** * Test constructor behavior. */ public function testConstructor() { $this->assertCount(2, Configurator::getAllInvokes($this->controller)); $invokes = Configurator::getInvokes($this->controller, 'setRunner'); $this->assertCount(1, $invokes); $this->assertSame([$this->runner], $invokes[0]); $invokes = Configurator::getInvokes($this->controller, 'switchTo'); $this->assertCount(1, $invokes); $this->assertSame(['controller.run'], $invokes[0]); }
/** * Test run suites behavior. * * @param \ArrayObject $suites * @param int $executor * @param int $statusCode * * @dataProvider dpRun */ public function testRun(\ArrayObject $suites, $executor, $statusCode) { /** @var Suggestible|ContainerBuilder $container */ $container = new ContainerBuilder(); /** @var Suggestible $logger */ $logger = new Logger('test'); Configurator::setCustomBehavior($logger, 'info', null); $container->set('logger', $logger); /** @var Suggestible $dispatcher */ $dispatcher = new EventDispatcher(); Configurator::storeInvokes($dispatcher, true); $container->set('dispatcher', $dispatcher); /** @var Suggestible|Processor $processor */ $processor = new Processor($container); Configurator::storeInvokes($processor, true); Configurator::setCustomBehavior($processor, 'executor', $executor); $this->assertSame($statusCode, $processor->run($suites)); $this->assertSame([[EventStorage::EV_APP_STARTED], [EventStorage::EV_APP_FINISHED]], Configurator::getInvokes($dispatcher, 'dispatch'), 'Dispatcher did not send application events.'); $this->assertSame(1, Configurator::getInvokesCount($processor, 'run')); $this->assertSame($suites->count(), Configurator::getInvokesCount($processor, 'backupGlobals')); $this->assertSame($suites->count(), Configurator::getInvokesCount($processor, 'executor')); $this->assertSame($suites->count(), Configurator::getInvokesCount($processor, 'restoreGlobals')); }