X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=tests%2FWallabag%2FImportBundle%2FCommand%2FImportCommandTest.php;h=8e1c528de3373177de03a06db0b1937c6142adc7;hb=8f2038e5b15c2d7342ed18381531e5eb95e86d46;hp=7be1eb18f6f4a0e682966b0ac1f3639d04b859ee;hpb=99731f0bb1f6fd2815eeb9af504ce86df927657b;p=github%2Fwallabag%2Fwallabag.git diff --git a/tests/Wallabag/ImportBundle/Command/ImportCommandTest.php b/tests/Wallabag/ImportBundle/Command/ImportCommandTest.php index 7be1eb18..8e1c528d 100644 --- a/tests/Wallabag/ImportBundle/Command/ImportCommandTest.php +++ b/tests/Wallabag/ImportBundle/Command/ImportCommandTest.php @@ -4,13 +4,13 @@ namespace Tests\Wallabag\ImportBundle\Command; use Symfony\Bundle\FrameworkBundle\Console\Application; use Symfony\Component\Console\Tester\CommandTester; -use Wallabag\ImportBundle\Command\ImportCommand; use Tests\Wallabag\CoreBundle\WallabagCoreTestCase; +use Wallabag\ImportBundle\Command\ImportCommand; class ImportCommandTest extends WallabagCoreTestCase { /** - * @expectedException Symfony\Component\Console\Exception\RuntimeException + * @expectedException \Symfony\Component\Console\Exception\RuntimeException * @expectedExceptionMessage Not enough arguments */ public function testRunImportCommandWithoutArguments() @@ -27,7 +27,7 @@ class ImportCommandTest extends WallabagCoreTestCase } /** - * @expectedException Symfony\Component\Config\Definition\Exception\Exception + * @expectedException \Symfony\Component\Config\Definition\Exception\Exception * @expectedExceptionMessage not found */ public function testRunImportCommandWithoutFilepath() @@ -40,16 +40,15 @@ class ImportCommandTest extends WallabagCoreTestCase $tester = new CommandTester($command); $tester->execute([ 'command' => $command->getName(), - 'userId' => 1, + 'username' => 'admin', 'filepath' => 1, ]); } /** - * @expectedException Symfony\Component\Config\Definition\Exception\Exception - * @expectedExceptionMessage User with id + * @expectedException \Doctrine\ORM\NoResultException */ - public function testRunImportCommandWithoutUserId() + public function testRunImportCommandWithWrongUsername() { $application = new Application($this->getClient()->getKernel()); $application->add(new ImportCommand()); @@ -59,7 +58,7 @@ class ImportCommandTest extends WallabagCoreTestCase $tester = new CommandTester($command); $tester->execute([ 'command' => $command->getName(), - 'userId' => 0, + 'username' => 'random', 'filepath' => './', ]); } @@ -74,8 +73,30 @@ class ImportCommandTest extends WallabagCoreTestCase $tester = new CommandTester($command); $tester->execute([ 'command' => $command->getName(), - 'userId' => 1, - 'filepath' => $application->getKernel()->getContainer()->getParameter('kernel.root_dir').'/../tests/Wallabag/ImportBundle/fixtures/wallabag-v2-read.json', + 'username' => 'admin', + 'filepath' => $application->getKernel()->getContainer()->getParameter('kernel.project_dir') . '/tests/Wallabag/ImportBundle/fixtures/wallabag-v2-read.json', + '--importer' => 'v2', + ]); + + $this->assertContains('imported', $tester->getDisplay()); + $this->assertContains('already saved', $tester->getDisplay()); + } + + public function testRunImportCommandWithUserId() + { + $this->logInAs('admin'); + + $application = new Application($this->getClient()->getKernel()); + $application->add(new ImportCommand()); + + $command = $application->find('wallabag:import'); + + $tester = new CommandTester($command); + $tester->execute([ + 'command' => $command->getName(), + 'username' => $this->getLoggedInUserId(), + 'filepath' => $application->getKernel()->getContainer()->getParameter('kernel.project_dir') . '/tests/Wallabag/ImportBundle/fixtures/wallabag-v2-read.json', + '--useUserId' => true, '--importer' => 'v2', ]);