/** * Prints feature header on BEFORE event. * * @param Formatter $formatter * @param Event $event */ private function printHeaderOnBeforeEvent(Formatter $formatter, Event $event) { if (!$event instanceof AfterFeatureSetup) { return; } $this->setupPrinter->printSetup($formatter, $event->getSetup()); $this->featurePrinter->printHeader($formatter, $event->getFeature()); }
/** * {@inheritdoc} */ public function listenEvent(Formatter $formatter, Event $event, $eventName) { if ($event instanceof AfterSuiteSetup) { $this->setupPrinter->printSetup($formatter, $event->getSetup()); } if ($event instanceof AfterSuiteTested) { $this->setupPrinter->printTeardown($formatter, $event->getTeardown()); } }
/** * Prints scenario/background header on BEFORE event. * * @param Formatter $formatter * @param ScenarioLikeTested|AfterSetup $event * @param string $eventName */ private function printHeaderOnBeforeEvent(Formatter $formatter, ScenarioLikeTested $event, $eventName) { if ($this->beforeEventName !== $eventName || !$event instanceof AfterSetup) { return; } if ($this->setupPrinter) { $this->setupPrinter->printSetup($formatter, $event->getSetup()); } $this->scenarioPrinter->printHeader($formatter, $event->getFeature(), $event->getScenario()); }
/** * Prints step setup on step BEFORE event. * * @param Formatter $formatter * @param Event $event */ private function printStepSetupOnBeforeStepEvent(Formatter $formatter, Event $event) { if (!$event instanceof AfterStepSetup) { return; } $this->stepSetupPrinter->printSetup($formatter, $event->getSetup()); }
/** * Prints example row on example AFTER event. * * @param Formatter $formatter * @param Event $event * @param string $eventName */ private function printExampleRowOnAfterExampleEvent(Formatter $formatter, Event $event, $eventName) { if (!$event instanceof AfterScenarioTested || ExampleTested::AFTER !== $eventName) { return; } $example = $event->getScenario(); $this->exampleSetupPrinter->printSetup($formatter, $this->exampleSetup); foreach ($this->stepBeforeTestedEvents as $beforeEvent) { $this->stepSetupPrinter->printSetup($formatter, $beforeEvent->getSetup()); } $this->exampleRowPrinter->printExampleRow($formatter, $this->outline, $example, $this->stepAfterTestedEvents); foreach ($this->stepAfterTestedEvents as $afterEvent) { $this->stepSetupPrinter->printTeardown($formatter, $afterEvent->getTeardown()); } $this->exampleSetupPrinter->printTeardown($formatter, $event->getTeardown()); $this->exampleSetup = null; $this->stepBeforeTestedEvents = array(); $this->stepAfterTestedEvents = array(); }
/** * Prints the feature on AFTER event. * * @param Formatter $formatter * @param Event $event */ public function printFeatureOnAfterEvent(Formatter $formatter, Event $event) { if (!$event instanceof AfterFeatureTested) { return; } $this->featurePrinter->printHeader($formatter, $this->beforeFeatureTestedEvent); foreach ($this->afterScenarioTestedEvents as $afterScenario) { $afterScenarioTested = $afterScenario['event']; $this->scenarioPrinter->printOpenTag($formatter, $afterScenarioTested->getFeature(), $afterScenarioTested->getScenario(), $afterScenarioTested->getTestResult()); /** @var AfterStepSetup $afterStepSetup */ foreach ($afterScenario['step_setup_events'] as $afterStepSetup) { $this->setupPrinter->printSetup($formatter, $afterStepSetup->getSetup()); } foreach ($afterScenario['step_events'] as $afterStepTested) { $this->stepPrinter->printStep($formatter, $afterScenarioTested->getScenario(), $afterStepTested->getStep(), $afterStepTested->getTestResult()); $this->setupPrinter->printTeardown($formatter, $afterStepTested->getTeardown()); } } $this->featurePrinter->printFooter($formatter, $event->getTestResult()); $this->afterScenarioTestedEvents = array(); }