application = new Application($kernel); $this->application->add(new VersionCommand()); } /** * @dataProvider getTestData */ public function testVersion(array $options, $result) { $commandTester = $this->getCommandTester($options); $output = $commandTester->getDisplay(); $this->assertEquals($result . PHP_EOL, $output); } public function getTestData() { return [ [[], 'Kimai ' . Constants::VERSION . ' by Kevin Papst and contributors.'], [['--name' => true], Constants::NAME], [['--short' => true], Constants::VERSION], // @deprecated since 1.14.1 [['--candidate' => true], Constants::STATUS], [['--semver' => true], Constants::VERSION . '-' . Constants::STATUS], ]; } protected function getCommandTester(array $options = []) { $command = $this->application->find('kimai:version'); $commandTester = new CommandTester($command); $inputs = array_merge(['command' => $command->getName()], $options); $commandTester->execute($inputs); return $commandTester; } }