function it_should_run_for_paths(Runner $runner, Process $process, ContainerInterface $container) { $results = array('succeed' => ResultEvent::createSucceed('Succeed'), 'failed' => ResultEvent::createFailed('Failed'), 'broken' => ResultEvent::createBroken('Broken')); Filesystem::create()->serialize($this->cacheFile, $results); $runner->run(Argument::any())->shouldBeCalled(); $process->getExitCode()->shouldBeCalled()->willReturn(1); $container->setParameter('application.exit_code', ResultEvent::FAILED)->shouldBeCalled(); $results = $this->run(array('some_path')); $results->getResults()->shouldHaveCount(2); }
function its_runAll_should_set_application_exit_code_if_results_has_failed_or_broken(ContainerInterface $container) { $failed = ResultEvent::createFailed('Failed', array('file' => 'some_file')); $success = ResultEvent::createSucceed('Success'); Filesystem::create()->serialize($this->cacheFile, array('failed' => $failed, 'success' => $success)); $container->setParameter('application.exit_code', ResultEvent::FAILED)->shouldBeCalled(); $this->runAll(); }
/** * @return ResultEvent[] */ private function doRunAll() { $results = array(); $arguments = $this->runAllArgs; $this->session = Session::create(); if ($this->isFailed()) { $rerunFile = $this->session->generateRerunFile(); $arguments[] = '--rerun=' . $rerunFile; } $builder = new ProcessBuilder($arguments); $this->getRunner()->run($builder); $this->session = Session::create(); if (!$this->isFailed()) { $results[] = ResultEvent::createSucceed(static::RUN_ALL_SUCCESS_MESSAGE); } else { $results = $this->session->getResults(); $results[] = ResultEvent::createFailed(static::RUN_ALL_FAILED_MESSAGE); } return $results; }