Example #1
0
 /**
  * @param ScenarioInterface $scenario
  *
  * @return string|void
  */
 private function getSteps(ScenarioInterface $scenario)
 {
     if (!$scenario->hasSteps()) {
         return;
     }
     $step = new Step($this->align);
     return $step->format($scenario->getSteps()) . "\n";
 }
 private function getSteps(ScenarioInterface $scenario)
 {
     if (!$scenario->hasSteps()) {
         return;
     }
     $recue = self::INDENTATION * 2;
     // TODO: abstract scenario formatter logic
     $longDesc = '';
     foreach ($scenario->getSteps() as $step) {
         $indentSpaces = $recue - strlen(trim($step->getKeyword())) + 1;
         $longDesc .= str_repeat(' ', $indentSpaces + self::INDENTATION) . trim($step->getKeyword()) . ' ' . trim($step->getText()) . PHP_EOL;
         if ($step->hasArguments()) {
             /* @var $argument TableNode */
             foreach ($step->getArguments() as $argument) {
                 if ($argument->getNodeType() === 'Table') {
                     $longDesc .= implode('', array_map(function ($arguments) use($recue) {
                         return str_repeat(' ', $recue + 4) . trim($arguments) . PHP_EOL;
                     }, explode("\n", $argument->getTableAsString())));
                 }
             }
         }
     }
     return $longDesc . PHP_EOL;
 }