protected function setUp() { $this->application = new Application(); $this->application->setAutoExit(false); $callable = function (Output $output) { $output->writeln('foo'); }; $this->application->register('foo', $callable)->addArgument('foo'); $this->tester = new ApplicationTester($this->application); $this->provider = new Provider(); $this->parsedCommand = $this->tester->run(array('command' => 'foo', 'foo' => 'bar'), array('interactive' => false, 'decorated' => false, 'verbosity' => Output::VERBOSITY_VERBOSE)); }
public function testSetRunCustomDefaultCommand() { $command = new \FooCommand(); $application = new Application(); $application->setAutoExit(false); $application->add($command); $application->setDefaultCommand($command->getName()); $tester = new ApplicationTester($application); $parsedCommand = $tester->run(array()); $provider = new Provider(); $provider->execute($parsedCommand->getCallable(), []); $this->assertEquals('interact called' . PHP_EOL . 'called' . PHP_EOL, $tester->getDisplay(), 'Application runs the default set command if different from \'list\' command'); $application = new CustomDefaultCommandApplication(); $application->setAutoExit(false); $tester = new ApplicationTester($application); $parsedCommand = $tester->run(array()); $provider->execute($parsedCommand->getCallable(), []); $this->assertEquals('interact called' . PHP_EOL . 'called' . PHP_EOL, $tester->getDisplay(), 'Application runs the default set command if different from \'list\' command'); }