public function start(GenericEvent $event) { if ($this->options['all_on_start']) { $results = $this->container->get('behat.inspector')->runAll(); $event->addProcessEvent(new ProcessEvent($this, $results)); } }
public function testPrintReport() { if (file_exists($file = CodeCoverageSession::getCacheFile())) { unlink($file); } $options = array('enabled' => true, 'output.text' => true, 'output.html' => getcwd(), 'output.clover' => getcwd() . '/clover.xml'); static::$container->setParameter('session.results', array('some')); $runner = new CodeCoverageSession(); $runner->setOptions($options); $runner->setContainer(static::$container); $event = new ProcessEvent(static::$container->get('plugins.test')); $genericEvent = new GenericEvent(static::$container); $genericEvent->addProcessEvent($event); // not display coverage when results file not exists $runner->process($genericEvent); $this->assertNotDisplayContains('html output'); $this->assertNotDisplayContains('text output'); $this->assertNotDisplayContains('clover output'); // display coverage when cache file exists Filesystem::create()->serialize($file, $runner); $runner->process($genericEvent); $this->assertDisplayContains('html output'); $this->assertDisplayContains('text output'); $this->assertDisplayContains('clover output'); }
public function start(GenericEvent $event) { if ($this->options['all_on_start']) { $this->logger->addDebug('Begin executing all on start'); $event->addProcessEvent($this->runAll()); $this->logger->addDebug('End executing all on start'); } }
function it_should_run_all_on_start_if_defined(Inspector $inspector, GenericEvent $event) { $event->addProcessEvent(Argument::any())->shouldBeCalled(); $inspector->runAll()->shouldBeCalled()->willReturn(array()); $options = array('all_on_start' => true); $this->setOptions($options); $this->start($event); }
public function runAllCommand(GenericEvent $event) { /* @var \PhpGuard\Application\Plugin\PluginInterface $plugin */ $this->container->setParameter('application.exit_code', 0); if (is_null($plugin = $event->getArgument('plugin'))) { $plugins = $this->container->getByPrefix('plugins'); } else { $name = 'plugins.' . $plugin; if ($this->container->has($name)) { $plugin = $this->container->get('plugins.' . $plugin); $plugins = array($plugin); } else { throw new \RuntimeException(sprintf('Plugin "%s" is not registered', $plugin)); } } foreach ($plugins as $plugin) { if (!$plugin->isActive()) { $this->getLogger()->addDebug(sprintf('Plugin "%s" is not active', $plugin->getTitle())); continue; } else { $this->getLogger()->addDebug('Start running all for plugin ' . $plugin->getTitle()); $event->addProcessEvent($plugin->runAll()); $this->getLogger()->addDebug('End running all for plugin ' . $plugin->getTitle()); } } }
function it_plugin_should_not_runAll_if_not_active(ContainerInterface $container, PluginInterface $active, PluginInterface $inactive, GenericEvent $event) { $event->getSubject()->willReturn($container); $event->getArgument('plugin')->willReturn(null); $event->addProcessEvent(Argument::any())->shouldBeCalled(); $container->getByPrefix('plugins')->willReturn(array($active, $inactive)); $container->has('active')->willReturn(true); $active->isActive()->shouldBeCalled()->willReturn(true); $active->runAll()->willReturn(new ProcessEvent($active->getWrappedObject(), array())); $active->getTitle()->willReturn('active'); $container->has('inactive')->willReturn(true); $inactive->getName()->willReturn('inactive'); $inactive->getTitle()->willReturn('Inactive'); $inactive->isActive()->shouldBeCalled()->willReturn(false); $inactive->runAll(Argument::any())->shouldNotBeCalled(); $this->runAllCommand($event); }