示例#1
0
 /**
  * Prints feature footer on AFTER event.
  *
  * @param Formatter $formatter
  * @param Event     $event
  */
 private function printFooterOnAfterEvent(Formatter $formatter, Event $event)
 {
     if (!$event instanceof AfterFeatureTested) {
         return;
     }
     $this->setupPrinter->printTeardown($formatter, $event->getTeardown());
     $this->featurePrinter->printFooter($formatter, $event->getTestResult());
 }
示例#2
0
 /**
  * Prints example step on step AFTER event.
  *
  * @param Formatter $formatter
  * @param Event     $event
  */
 private function printStepOnAfterStepEvent(Formatter $formatter, Event $event)
 {
     if (!$event instanceof AfterStepTested) {
         return;
     }
     $this->stepPrinter->printStep($formatter, $this->example, $event->getStep(), $event->getTestResult());
     $this->stepSetupPrinter->printTeardown($formatter, $event->getTeardown());
 }
 /**
  * Prints outline footer on outline AFTER event.
  *
  * @param Formatter $formatter
  * @param Event     $event
  */
 private function printFooterOnAfterEvent(Formatter $formatter, Event $event)
 {
     if (!$event instanceof AfterOutlineTested) {
         return;
     }
     $this->tablePrinter->printFooter($formatter, $event->getTestResult());
 }
示例#4
0
 /**
  * Captures step stats on step AFTER event.
  *
  * @param Event $event
  */
 private function captureStepStatsOnAfterEvent(Event $event)
 {
     if (!$event instanceof AfterStepTested) {
         return;
     }
     $result = $event->getTestResult();
     $step = $event->getStep();
     $text = sprintf('%s %s', $step->getKeyword(), $step->getText());
     $exception = $this->getStepException($result);
     $path = $this->getStepPath($event, $exception);
     $error = $exception ? $this->exceptionPresenter->presentException($exception) : null;
     $stdOut = $result instanceof ExecutedStepResult ? $result->getCallResult()->getStdOut() : null;
     $resultCode = $result->getResultCode();
     $stat = new StepStatV2($this->scenarioTitle, $this->scenarioPath, $text, $path, $resultCode, $error, $stdOut);
     $this->statistics->registerStepStat($stat);
 }
示例#5
0
 /**
  * Prints step on AFTER event.
  *
  * @param Formatter $formatter
  * @param Event     $event
  */
 private function printStepOnAfterEvent(Formatter $formatter, Event $event)
 {
     if (!$event instanceof AfterStepTested) {
         return;
     }
     $this->stepPrinter->printStep($formatter, $this->scenario, $event->getStep(), $event->getTestResult());
     if ($this->setupPrinter) {
         $this->setupPrinter->printTeardown($formatter, $event->getTeardown());
     }
 }
 /**
  * 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();
 }
 /**
  * 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);
 }