diff options
Diffstat (limited to 'src/Wallabag/CoreBundle/Tests/EventListener')
3 files changed, 0 insertions, 231 deletions
diff --git a/src/Wallabag/CoreBundle/Tests/EventListener/LocaleListenerTest.php b/src/Wallabag/CoreBundle/Tests/EventListener/LocaleListenerTest.php deleted file mode 100644 index b4c022d5..00000000 --- a/src/Wallabag/CoreBundle/Tests/EventListener/LocaleListenerTest.php +++ /dev/null | |||
@@ -1,82 +0,0 @@ | |||
1 | <?php | ||
2 | |||
3 | namespace Wallabag\CoreBundle\Tests\EventListener; | ||
4 | |||
5 | use Symfony\Component\EventDispatcher\EventDispatcher; | ||
6 | use Symfony\Component\HttpFoundation\Request; | ||
7 | use Symfony\Component\HttpFoundation\Session\Session; | ||
8 | use Symfony\Component\HttpFoundation\Session\Storage\MockArraySessionStorage; | ||
9 | use Symfony\Component\HttpKernel\Event\GetResponseEvent; | ||
10 | use Symfony\Component\HttpKernel\HttpKernelInterface; | ||
11 | use Symfony\Component\HttpKernel\KernelEvents; | ||
12 | use Wallabag\CoreBundle\EventListener\LocaleListener; | ||
13 | |||
14 | class LocaleListenerTest extends \PHPUnit_Framework_TestCase | ||
15 | { | ||
16 | private function getEvent(Request $request) | ||
17 | { | ||
18 | return new GetResponseEvent($this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface'), $request, HttpKernelInterface::MASTER_REQUEST); | ||
19 | } | ||
20 | |||
21 | public function testWithoutSession() | ||
22 | { | ||
23 | $request = Request::create('/'); | ||
24 | |||
25 | $listener = new LocaleListener('fr'); | ||
26 | $event = $this->getEvent($request); | ||
27 | |||
28 | $listener->onKernelRequest($event); | ||
29 | $this->assertEquals('en', $request->getLocale()); | ||
30 | } | ||
31 | |||
32 | public function testWithPreviousSession() | ||
33 | { | ||
34 | $request = Request::create('/'); | ||
35 | // generate a previous session | ||
36 | $request->cookies->set('MOCKSESSID', 'foo'); | ||
37 | $request->setSession(new Session(new MockArraySessionStorage())); | ||
38 | |||
39 | $listener = new LocaleListener('fr'); | ||
40 | $event = $this->getEvent($request); | ||
41 | |||
42 | $listener->onKernelRequest($event); | ||
43 | $this->assertEquals('fr', $request->getLocale()); | ||
44 | } | ||
45 | |||
46 | public function testLocaleFromRequestAttribute() | ||
47 | { | ||
48 | $request = Request::create('/'); | ||
49 | // generate a previous session | ||
50 | $request->cookies->set('MOCKSESSID', 'foo'); | ||
51 | $request->setSession(new Session(new MockArraySessionStorage())); | ||
52 | $request->attributes->set('_locale', 'es'); | ||
53 | |||
54 | $listener = new LocaleListener('fr'); | ||
55 | $event = $this->getEvent($request); | ||
56 | |||
57 | $listener->onKernelRequest($event); | ||
58 | $this->assertEquals('en', $request->getLocale()); | ||
59 | $this->assertEquals('es', $request->getSession()->get('_locale')); | ||
60 | } | ||
61 | |||
62 | public function testSubscribedEvents() | ||
63 | { | ||
64 | $request = Request::create('/'); | ||
65 | // generate a previous session | ||
66 | $request->cookies->set('MOCKSESSID', 'foo'); | ||
67 | $request->setSession(new Session(new MockArraySessionStorage())); | ||
68 | |||
69 | $listener = new LocaleListener('fr'); | ||
70 | $event = $this->getEvent($request); | ||
71 | |||
72 | $dispatcher = new EventDispatcher(); | ||
73 | $dispatcher->addSubscriber($listener); | ||
74 | |||
75 | $dispatcher->dispatch( | ||
76 | KernelEvents::REQUEST, | ||
77 | $event | ||
78 | ); | ||
79 | |||
80 | $this->assertEquals('fr', $request->getLocale()); | ||
81 | } | ||
82 | } | ||
diff --git a/src/Wallabag/CoreBundle/Tests/EventListener/RegistrationConfirmedListenerTest.php b/src/Wallabag/CoreBundle/Tests/EventListener/RegistrationConfirmedListenerTest.php deleted file mode 100644 index 7039dc61..00000000 --- a/src/Wallabag/CoreBundle/Tests/EventListener/RegistrationConfirmedListenerTest.php +++ /dev/null | |||
@@ -1,91 +0,0 @@ | |||
1 | <?php | ||
2 | |||
3 | namespace Wallabag\CoreBundle\Tests\EventListener; | ||
4 | |||
5 | use FOS\UserBundle\Event\FilterUserResponseEvent; | ||
6 | use FOS\UserBundle\FOSUserEvents; | ||
7 | use Symfony\Component\EventDispatcher\EventDispatcher; | ||
8 | use Symfony\Component\HttpFoundation\Request; | ||
9 | use Symfony\Component\HttpFoundation\Response; | ||
10 | use Wallabag\CoreBundle\Entity\Config; | ||
11 | use Wallabag\CoreBundle\EventListener\RegistrationConfirmedListener; | ||
12 | use Wallabag\UserBundle\Entity\User; | ||
13 | |||
14 | class RegistrationConfirmedListenerTest extends \PHPUnit_Framework_TestCase | ||
15 | { | ||
16 | private $em; | ||
17 | private $listener; | ||
18 | private $dispatcher; | ||
19 | private $request; | ||
20 | private $response; | ||
21 | |||
22 | protected function setUp() | ||
23 | { | ||
24 | $this->em = $this->getMockBuilder('Doctrine\ORM\EntityManager') | ||
25 | ->disableOriginalConstructor() | ||
26 | ->getMock(); | ||
27 | |||
28 | $this->listener = new RegistrationConfirmedListener( | ||
29 | $this->em, | ||
30 | 'baggy', | ||
31 | 20, | ||
32 | 50, | ||
33 | 'fr' | ||
34 | ); | ||
35 | |||
36 | $this->dispatcher = new EventDispatcher(); | ||
37 | $this->dispatcher->addSubscriber($this->listener); | ||
38 | |||
39 | $this->request = Request::create('/'); | ||
40 | $this->response = Response::create(); | ||
41 | } | ||
42 | |||
43 | public function testWithInvalidUser() | ||
44 | { | ||
45 | $user = new User(); | ||
46 | $user->setEnabled(false); | ||
47 | |||
48 | $event = new FilterUserResponseEvent( | ||
49 | $user, | ||
50 | $this->request, | ||
51 | $this->response | ||
52 | ); | ||
53 | |||
54 | $this->em->expects($this->never())->method('persist'); | ||
55 | $this->em->expects($this->never())->method('flush'); | ||
56 | |||
57 | $this->dispatcher->dispatch( | ||
58 | FOSUserEvents::REGISTRATION_CONFIRMED, | ||
59 | $event | ||
60 | ); | ||
61 | } | ||
62 | |||
63 | public function testWithValidUser() | ||
64 | { | ||
65 | $user = new User(); | ||
66 | $user->setEnabled(true); | ||
67 | |||
68 | $event = new FilterUserResponseEvent( | ||
69 | $user, | ||
70 | $this->request, | ||
71 | $this->response | ||
72 | ); | ||
73 | |||
74 | $config = new Config($user); | ||
75 | $config->setTheme('baggy'); | ||
76 | $config->setItemsPerPage(20); | ||
77 | $config->setRssLimit(50); | ||
78 | $config->setLanguage('fr'); | ||
79 | |||
80 | $this->em->expects($this->once()) | ||
81 | ->method('persist') | ||
82 | ->will($this->returnValue($config)); | ||
83 | $this->em->expects($this->once()) | ||
84 | ->method('flush'); | ||
85 | |||
86 | $this->dispatcher->dispatch( | ||
87 | FOSUserEvents::REGISTRATION_CONFIRMED, | ||
88 | $event | ||
89 | ); | ||
90 | } | ||
91 | } | ||
diff --git a/src/Wallabag/CoreBundle/Tests/EventListener/UserLocaleListenerTest.php b/src/Wallabag/CoreBundle/Tests/EventListener/UserLocaleListenerTest.php deleted file mode 100644 index d9ffe30e..00000000 --- a/src/Wallabag/CoreBundle/Tests/EventListener/UserLocaleListenerTest.php +++ /dev/null | |||
@@ -1,58 +0,0 @@ | |||
1 | <?php | ||
2 | |||
3 | namespace Wallabag\CoreBundle\Tests\EventListener; | ||
4 | |||
5 | use Symfony\Component\HttpFoundation\Request; | ||
6 | use Symfony\Component\HttpFoundation\Session\Session; | ||
7 | use Symfony\Component\HttpFoundation\Session\Storage\MockArraySessionStorage; | ||
8 | use Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken; | ||
9 | use Symfony\Component\Security\Http\Event\InteractiveLoginEvent; | ||
10 | use Wallabag\CoreBundle\Entity\Config; | ||
11 | use Wallabag\CoreBundle\EventListener\UserLocaleListener; | ||
12 | use Wallabag\UserBundle\Entity\User; | ||
13 | |||
14 | class UserLocaleListenerTest extends \PHPUnit_Framework_TestCase | ||
15 | { | ||
16 | public function testWithLanguage() | ||
17 | { | ||
18 | $session = new Session(new MockArraySessionStorage()); | ||
19 | $listener = new UserLocaleListener($session); | ||
20 | |||
21 | $user = new User(); | ||
22 | $user->setEnabled(true); | ||
23 | |||
24 | $config = new Config($user); | ||
25 | $config->setLanguage('fr'); | ||
26 | |||
27 | $user->setConfig($config); | ||
28 | |||
29 | $userToken = new UsernamePasswordToken($user, '', 'test'); | ||
30 | $request = Request::create('/'); | ||
31 | $event = new InteractiveLoginEvent($request, $userToken); | ||
32 | |||
33 | $listener->onInteractiveLogin($event); | ||
34 | |||
35 | $this->assertEquals('fr', $session->get('_locale')); | ||
36 | } | ||
37 | |||
38 | public function testWithoutLanguage() | ||
39 | { | ||
40 | $session = new Session(new MockArraySessionStorage()); | ||
41 | $listener = new UserLocaleListener($session); | ||
42 | |||
43 | $user = new User(); | ||
44 | $user->setEnabled(true); | ||
45 | |||
46 | $config = new Config($user); | ||
47 | |||
48 | $user->setConfig($config); | ||
49 | |||
50 | $userToken = new UsernamePasswordToken($user, '', 'test'); | ||
51 | $request = Request::create('/'); | ||
52 | $event = new InteractiveLoginEvent($request, $userToken); | ||
53 | |||
54 | $listener->onInteractiveLogin($event); | ||
55 | |||
56 | $this->assertEquals('', $session->get('_locale')); | ||
57 | } | ||
58 | } | ||