From a42f38d9fb7906b785285fab2a09f8c2b9efe996 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Sun, 6 Nov 2016 12:02:39 +0100 Subject: Added a configuration to define the redirection after archiving an entry Fix #496 --- tests/Wallabag/CoreBundle/Helper/DownloadImagesTest.php | 1 - tests/Wallabag/CoreBundle/Helper/RedirectTest.php | 5 ++++- 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'tests/Wallabag/CoreBundle/Helper') diff --git a/tests/Wallabag/CoreBundle/Helper/DownloadImagesTest.php b/tests/Wallabag/CoreBundle/Helper/DownloadImagesTest.php index 920c21d9..85f12d87 100644 --- a/tests/Wallabag/CoreBundle/Helper/DownloadImagesTest.php +++ b/tests/Wallabag/CoreBundle/Helper/DownloadImagesTest.php @@ -3,7 +3,6 @@ namespace Tests\Wallabag\CoreBundle\Helper; use Wallabag\CoreBundle\Helper\DownloadImages; -use Psr\Log\NullLogger; use Monolog\Logger; use Monolog\Handler\TestHandler; use GuzzleHttp\Client; diff --git a/tests/Wallabag/CoreBundle/Helper/RedirectTest.php b/tests/Wallabag/CoreBundle/Helper/RedirectTest.php index f339f75e..825e8d53 100644 --- a/tests/Wallabag/CoreBundle/Helper/RedirectTest.php +++ b/tests/Wallabag/CoreBundle/Helper/RedirectTest.php @@ -15,7 +15,10 @@ class RedirectTest extends \PHPUnit_Framework_TestCase public function setUp() { $this->routerMock = $this->getRouterMock(); - $this->redirect = new Redirect($this->routerMock); + $tokenStorage = $this->getMockBuilder('Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface') + ->disableOriginalConstructor() + ->getMock(); + $this->redirect = new Redirect($this->routerMock, $tokenStorage); } public function testRedirectToNullWithFallback() -- cgit v1.2.3 From 65cd8a4a9a1d15d962033f58276005a5f7716f3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Mon, 7 Nov 2016 10:26:05 +0100 Subject: Added tests --- tests/Wallabag/CoreBundle/Helper/RedirectTest.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'tests/Wallabag/CoreBundle/Helper') diff --git a/tests/Wallabag/CoreBundle/Helper/RedirectTest.php b/tests/Wallabag/CoreBundle/Helper/RedirectTest.php index 825e8d53..a2d6a524 100644 --- a/tests/Wallabag/CoreBundle/Helper/RedirectTest.php +++ b/tests/Wallabag/CoreBundle/Helper/RedirectTest.php @@ -25,14 +25,14 @@ class RedirectTest extends \PHPUnit_Framework_TestCase { $redirectUrl = $this->redirect->to(null, 'fallback'); - $this->assertEquals('fallback', $redirectUrl); + $this->assertEquals(null, $redirectUrl); } public function testRedirectToNullWithoutFallback() { $redirectUrl = $this->redirect->to(null); - $this->assertEquals($this->routerMock->generate('homepage'), $redirectUrl); + $this->assertEquals(null, $redirectUrl); } public function testRedirectToValidUrl() -- cgit v1.2.3 From 54fd55fda1eca050ba10fd41c68251cd2dcd02a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Thu, 10 Nov 2016 15:50:10 +0100 Subject: Tried to fix tests --- tests/Wallabag/CoreBundle/Helper/RedirectTest.php | 65 +++++++++++++++++++++-- 1 file changed, 60 insertions(+), 5 deletions(-) (limited to 'tests/Wallabag/CoreBundle/Helper') diff --git a/tests/Wallabag/CoreBundle/Helper/RedirectTest.php b/tests/Wallabag/CoreBundle/Helper/RedirectTest.php index a2d6a524..3dcdf8de 100644 --- a/tests/Wallabag/CoreBundle/Helper/RedirectTest.php +++ b/tests/Wallabag/CoreBundle/Helper/RedirectTest.php @@ -12,12 +12,14 @@ class RedirectTest extends \PHPUnit_Framework_TestCase /** @var Redirect */ private $redirect; + const PASSWORD = 's3Cr3t'; + const SALT = '^S4lt$'; + public function setUp() { $this->routerMock = $this->getRouterMock(); - $tokenStorage = $this->getMockBuilder('Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface') - ->disableOriginalConstructor() - ->getMock(); + $user = $this->createUser(); + $tokenStorage = $this->createTokenStorage($user); $this->redirect = new Redirect($this->routerMock, $tokenStorage); } @@ -25,14 +27,14 @@ class RedirectTest extends \PHPUnit_Framework_TestCase { $redirectUrl = $this->redirect->to(null, 'fallback'); - $this->assertEquals(null, $redirectUrl); + $this->assertEquals('fallback', $redirectUrl); } public function testRedirectToNullWithoutFallback() { $redirectUrl = $this->redirect->to(null); - $this->assertEquals(null, $redirectUrl); + $this->assertEquals($this->routerMock->generate('homepage'), $redirectUrl); } public function testRedirectToValidUrl() @@ -55,4 +57,57 @@ class RedirectTest extends \PHPUnit_Framework_TestCase return $mock; } + + protected function createTokenStorage($user = null) + { + $token = $this->createAuthenticationToken($user); + + $mock = $this->getMockBuilder('Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface') + ->disableOriginalConstructor() + ->getMock(); + + $mock + ->expects($this->any()) + ->method('getToken') + ->will($this->returnValue($token)) + ; + + return $mock; + } + + protected function createUser() + { + $mock = $this->getMockBuilder('Symfony\Component\Security\Core\User\UserInterface') + ->disableOriginalConstructor() + ->getMock(); + + $mock + ->expects($this->any()) + ->method('getPassword') + ->will($this->returnValue(static::PASSWORD)) + ; + + $mock + ->expects($this->any()) + ->method('getSalt') + ->will($this->returnValue(static::SALT)) + ; + + return $mock; + } + + protected function createAuthenticationToken($user = null) + { + $mock = $this->getMockBuilder('Symfony\Component\Security\Core\Authentication\Token\TokenInterface') + ->disableOriginalConstructor() + ->getMock(); + + $mock + ->expects($this->any()) + ->method('getUser') + ->will($this->returnValue($user)) + ; + + return $mock; + } } -- cgit v1.2.3 From 00bf45b6f291b6d1ce5f6a106e8e15bb1cce411b Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Wed, 16 Nov 2016 23:07:00 +0100 Subject: Update unit test for Redirect --- tests/Wallabag/CoreBundle/Helper/RedirectTest.php | 104 +++++++++------------- 1 file changed, 43 insertions(+), 61 deletions(-) (limited to 'tests/Wallabag/CoreBundle/Helper') diff --git a/tests/Wallabag/CoreBundle/Helper/RedirectTest.php b/tests/Wallabag/CoreBundle/Helper/RedirectTest.php index 3dcdf8de..6aa59644 100644 --- a/tests/Wallabag/CoreBundle/Helper/RedirectTest.php +++ b/tests/Wallabag/CoreBundle/Helper/RedirectTest.php @@ -2,7 +2,11 @@ namespace Tests\Wallabag\CoreBundle\Helper; +use Wallabag\CoreBundle\Entity\Config; +use Wallabag\UserBundle\Entity\User; use Wallabag\CoreBundle\Helper\Redirect; +use Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken; +use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage; class RedirectTest extends \PHPUnit_Framework_TestCase { @@ -17,9 +21,37 @@ class RedirectTest extends \PHPUnit_Framework_TestCase public function setUp() { - $this->routerMock = $this->getRouterMock(); - $user = $this->createUser(); - $tokenStorage = $this->createTokenStorage($user); + $this->routerMock = $this->getMockBuilder('Symfony\Component\Routing\Router') + ->disableOriginalConstructor() + ->getMock(); + + $this->routerMock->expects($this->any()) + ->method('generate') + ->with('homepage') + ->willReturn('homepage'); + + $user = new User(); + $user->setName('youpi'); + $user->setEmail('youpi@youpi.org'); + $user->setUsername('youpi'); + $user->setPlainPassword('youpi'); + $user->setEnabled(true); + $user->addRole('ROLE_SUPER_ADMIN'); + + $config = new Config($user); + $config->setTheme('material'); + $config->setItemsPerPage(30); + $config->setReadingSpeed(1); + $config->setLanguage('en'); + $config->setPocketConsumerKey('xxxxx'); + $config->setActionMarkAsRead(Config::REDIRECT_TO_CURRENT_PAGE); + + $user->setConfig($config); + + $this->token = new UsernamePasswordToken($user, 'password', 'key'); + $tokenStorage = new TokenStorage(); + $tokenStorage->setToken($this->token); + $this->redirect = new Redirect($this->routerMock, $tokenStorage); } @@ -44,70 +76,20 @@ class RedirectTest extends \PHPUnit_Framework_TestCase $this->assertEquals('/unread/list', $redirectUrl); } - private function getRouterMock() - { - $mock = $this->getMockBuilder('Symfony\Component\Routing\Router') - ->disableOriginalConstructor() - ->getMock(); - - $mock->expects($this->any()) - ->method('generate') - ->with('homepage') - ->willReturn('homepage'); - - return $mock; - } - - protected function createTokenStorage($user = null) + public function testWithNotLoggedUser() { - $token = $this->createAuthenticationToken($user); - - $mock = $this->getMockBuilder('Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface') - ->disableOriginalConstructor() - ->getMock(); + $redirect = new Redirect($this->routerMock, new TokenStorage()); + $redirectUrl = $redirect->to('/unread/list'); - $mock - ->expects($this->any()) - ->method('getToken') - ->will($this->returnValue($token)) - ; - - return $mock; - } - - protected function createUser() - { - $mock = $this->getMockBuilder('Symfony\Component\Security\Core\User\UserInterface') - ->disableOriginalConstructor() - ->getMock(); - - $mock - ->expects($this->any()) - ->method('getPassword') - ->will($this->returnValue(static::PASSWORD)) - ; - - $mock - ->expects($this->any()) - ->method('getSalt') - ->will($this->returnValue(static::SALT)) - ; - - return $mock; + $this->assertEquals('/unread/list', $redirectUrl); } - protected function createAuthenticationToken($user = null) + public function testUserForRedirectToHomepage() { - $mock = $this->getMockBuilder('Symfony\Component\Security\Core\Authentication\Token\TokenInterface') - ->disableOriginalConstructor() - ->getMock(); + $this->token->getUser()->getConfig()->setActionMarkAsRead(Config::REDIRECT_TO_HOMEPAGE); - $mock - ->expects($this->any()) - ->method('getUser') - ->will($this->returnValue($user)) - ; + $redirectUrl = $this->redirect->to('/unread/list'); - return $mock; + $this->assertEquals($this->routerMock->generate('homepage'), $redirectUrl); } } -- cgit v1.2.3 From e6b133c60cc07e750ed38a1610ec30d3cd8d3189 Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Wed, 16 Nov 2016 23:10:01 +0100 Subject: CS --- tests/Wallabag/CoreBundle/Helper/RedirectTest.php | 3 --- 1 file changed, 3 deletions(-) (limited to 'tests/Wallabag/CoreBundle/Helper') diff --git a/tests/Wallabag/CoreBundle/Helper/RedirectTest.php b/tests/Wallabag/CoreBundle/Helper/RedirectTest.php index 6aa59644..0539f20a 100644 --- a/tests/Wallabag/CoreBundle/Helper/RedirectTest.php +++ b/tests/Wallabag/CoreBundle/Helper/RedirectTest.php @@ -16,9 +16,6 @@ class RedirectTest extends \PHPUnit_Framework_TestCase /** @var Redirect */ private $redirect; - const PASSWORD = 's3Cr3t'; - const SALT = '^S4lt$'; - public function setUp() { $this->routerMock = $this->getMockBuilder('Symfony\Component\Routing\Router') -- cgit v1.2.3