protected function execute(InputInterface $input, OutputInterface $output)
 {
     $migrations = $this->service->getAllMigrations();
     $command = $this->getApplication()->find('test');
     foreach ($migrations as $migration) {
         foreach (DirectionEnum::getAllValues() as $direction) {
             $inputToSingleTestCommand = new ArrayInput(['command' => 'test', 'name' => (string) $migration->getName(), 'direction' => $direction]);
             try {
                 $command->run($inputToSingleTestCommand, $output);
             } catch (InvalidFixturesException $e) {
                 $output->writeln('The fixtures for ' . $migration->getName() . ' going ' . $direction . ' are invalid: ' . $e->getMessage());
             }
         }
     }
 }
 public function testGetAllValues()
 {
     $availableDirections = DirectionEnum::getAllValues();
     $this->assertCount(2, $availableDirections);
 }
 /**
  * @param string $direction
  * @throws InvalidDirectionException if the direction given is not valid.
  */
 public function __construct($direction)
 {
     DirectionEnum::validateValue($direction);
     $this->direction = $direction;
 }