Example #1
0
 /**
  * Captures scenario into the ivar on scenario/background/example BEFORE event.
  *
  * @param Event $event
  */
 private function captureScenarioOnScenarioEvent(Event $event)
 {
     if (!$event instanceof ScenarioLikeTested) {
         return;
     }
     $this->scenario = $event->getScenario();
 }
Example #2
0
 /**
  * Prints example header on example BEFORE event.
  *
  * @param Formatter $formatter
  * @param Event     $event
  */
 private function printExampleHeaderOnBeforeExampleEvent(Formatter $formatter, Event $event)
 {
     if (!$event instanceof AfterScenarioSetup) {
         return;
     }
     $this->example = $event->getScenario();
     $this->exampleSetupPrinter->printSetup($formatter, $event->getSetup());
     $this->examplePrinter->printHeader($formatter, $event->getFeature(), $this->example);
 }
 /**
  * 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();
 }
Example #4
0
 /**
  * Captures current scenario title and path on scenario BEFORE event.
  *
  * @param Event $event
  */
 private function captureScenarioOnBeforeFeatureEvent(Event $event)
 {
     if (!$event instanceof BeforeScenarioTested) {
         return;
     }
     $this->scenarioTitle = sprintf('%s: %s', $event->getScenario()->getKeyword(), $event->getScenario()->getTitle());
     $this->scenarioPath = sprintf('%s:%s', $this->currentFeaturePath, $event->getScenario()->getLine());
 }
 /**
  * Captures scenario or example stats on their AFTER event.
  *
  * @param Event $event
  */
 private function captureScenarioOrExampleStatsOnAfterEvent(Event $event)
 {
     if (!$event instanceof AfterScenarioTested) {
         return;
     }
     $scenario = $event->getScenario();
     $title = $scenario->getTitle();
     $path = sprintf('%s:%d', $this->currentFeaturePath, $scenario->getLine());
     $resultCode = $event->getTestResult()->getResultCode();
     $stat = new ScenarioStat($title, $path, $resultCode);
     $this->statistics->registerScenarioStat($stat);
 }