From 27ea492cf72657a7ba2deb3d45302923ddd289b8 Mon Sep 17 00:00:00 2001 From: Jeremy Benoist <jeremy.benoist@gmail.com> Date: Thu, 21 Jan 2016 16:36:17 +0100 Subject: Add tests on TagAllCommand Some simple tests --- src/Wallabag/CoreBundle/Command/TagAllCommand.php | 2 +- .../CoreBundle/Tests/Command/TagAllCommandTest.php | 60 ++++++++++++++++++++++ 2 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 src/Wallabag/CoreBundle/Tests/Command/TagAllCommandTest.php (limited to 'src') diff --git a/src/Wallabag/CoreBundle/Command/TagAllCommand.php b/src/Wallabag/CoreBundle/Command/TagAllCommand.php index 2cf3f808..db1a9ab7 100644 --- a/src/Wallabag/CoreBundle/Command/TagAllCommand.php +++ b/src/Wallabag/CoreBundle/Command/TagAllCommand.php @@ -28,7 +28,7 @@ class TagAllCommand extends ContainerAwareCommand try { $user = $this->getUser($input->getArgument('username')); } catch (NoResultException $e) { - $output->writeln(sprintf('<error>User %s not found.</error>', $input->getArgument('username'))); + $output->writeln(sprintf('<error>User "%s" not found.</error>', $input->getArgument('username'))); return 1; } diff --git a/src/Wallabag/CoreBundle/Tests/Command/TagAllCommandTest.php b/src/Wallabag/CoreBundle/Tests/Command/TagAllCommandTest.php new file mode 100644 index 00000000..653c1a93 --- /dev/null +++ b/src/Wallabag/CoreBundle/Tests/Command/TagAllCommandTest.php @@ -0,0 +1,60 @@ +<?php + +namespace Wallabag\CoreBundle\Tests\Command; + +use Symfony\Bundle\FrameworkBundle\Console\Application; +use Symfony\Component\Console\Tester\CommandTester; +use Wallabag\CoreBundle\Command\TagAllCommand; +use Wallabag\CoreBundle\Tests\WallabagCoreTestCase; + +class TagAllCommandTest extends WallabagCoreTestCase +{ + /** + * @expectedException Symfony\Component\Console\Exception\RuntimeException + * @expectedExceptionMessage Not enough arguments (missing: "username") + */ + public function testRunTagAllCommandWithoutUsername() + { + $application = new Application($this->getClient()->getKernel()); + $application->add(new TagAllCommand()); + + $command = $application->find('wallabag:tag:all'); + + $tester = new CommandTester($command); + $tester->execute(array( + 'command' => $command->getName(), + )); + } + + public function testRunTagAllCommandWithBadUsername() + { + $application = new Application($this->getClient()->getKernel()); + $application->add(new TagAllCommand()); + + $command = $application->find('wallabag:tag:all'); + + $tester = new CommandTester($command); + $tester->execute(array( + 'command' => $command->getName(), + 'username' => 'unknown', + )); + + $this->assertContains('User "unknown" not found', $tester->getDisplay()); + } + + public function testRunTagAllCommand() + { + $application = new Application($this->getClient()->getKernel()); + $application->add(new TagAllCommand()); + + $command = $application->find('wallabag:tag:all'); + + $tester = new CommandTester($command); + $tester->execute(array( + 'command' => $command->getName(), + 'username' => 'admin', + )); + + $this->assertContains('Tagging entries for user « admin »... Done', $tester->getDisplay()); + } +} -- cgit v1.2.3