public function testExecute() { $application = new Application(); $commandTester = new CommandTester($command = $application->getCommand('list')); $commandTester->execute(array('command' => $command->getFullName())); $this->assertRegExp('/help Displays help for a command/', $commandTester->getDisplay(), '->execute() returns a list of available commands'); $commandTester->execute(array('command' => $command->getFullName(), '--xml' => true)); $this->assertRegExp('/<command id="list" namespace="_global" name="list">/', $commandTester->getDisplay(), '->execute() returns a list of available commands in XML if --xml is passed'); }
public function testExecute() { $command = new HelpCommand(); $command->setCommand(new ListCommand()); $commandTester = new CommandTester($command); $commandTester->execute(array()); $this->assertRegExp('/list \\[--xml\\] \\[namespace\\]/', $commandTester->getDisplay(), '->execute() returns a text help for the given command'); $commandTester->execute(array('--xml' => true)); $this->assertRegExp('/<command/', $commandTester->getDisplay(), '->execute() returns an XML help text if --xml is passed'); $application = new Application(); $commandTester = new CommandTester($application->getCommand('help')); $commandTester->execute(array('command_name' => 'list')); $this->assertRegExp('/list \\[--xml\\] \\[namespace\\]/', $commandTester->getDisplay(), '->execute() returns a text help for the given command'); $commandTester->execute(array('command_name' => 'list', '--xml' => true)); $this->assertRegExp('/<command/', $commandTester->getDisplay(), '->execute() returns an XML help text if --xml is passed'); }
public function testHasGetCommand() { $application = new Application(); $this->assertTrue($application->hasCommand('list'), '->hasCommand() returns true if a named command is registered'); $this->assertFalse($application->hasCommand('afoobar'), '->hasCommand() returns false if a named command is not registered'); $application->addCommand($foo = new \FooCommand()); $this->assertTrue($application->hasCommand('afoobar'), '->hasCommand() returns true if an alias is registered'); $this->assertEquals($foo, $application->getCommand('foo:bar'), '->getCommand() returns a command by name'); $this->assertEquals($foo, $application->getCommand('afoobar'), '->getCommand() returns a command by alias'); try { $application->getCommand('foofoo'); $this->fail('->getCommand() throws an \\InvalidArgumentException if the command does not exist'); } catch (\Exception $e) { $this->assertInstanceOf('\\InvalidArgumentException', $e, '->getCommand() throws an \\InvalidArgumentException if the command does not exist'); $this->assertEquals('The command "foofoo" does not exist.', $e->getMessage(), '->getCommand() throws an \\InvalidArgumentException if the command does not exist'); } $application = new TestApplication(); $application->addCommand($foo = new \FooCommand()); $application->setWantHelps(); $command = $application->getCommand('foo:bar'); $this->assertEquals('Symfony\\Component\\Console\\Command\\HelpCommand', get_class($command), '->getCommand() returns the help command if --help is provided as the input'); }