aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Wallabag/CoreBundle/Tests/EventListener/UserLocaleListenerTest.php
diff options
context:
space:
mode:
authorJeremy Benoist <jeremy.benoist@gmail.com>2015-10-16 07:40:09 +0200
committerJeremy Benoist <jeremy.benoist@gmail.com>2015-10-16 07:40:09 +0200
commit2aac2f278f1ca63f2097f80ddbdb924dea9ec59e (patch)
treecc09f37927d4a7ffbf576f636db0d36015190b08 /src/Wallabag/CoreBundle/Tests/EventListener/UserLocaleListenerTest.php
parentc89d35e851d26b78f89bd7ece5e3eaa109c8cac0 (diff)
downloadwallabag-2aac2f278f1ca63f2097f80ddbdb924dea9ec59e.tar.gz
wallabag-2aac2f278f1ca63f2097f80ddbdb924dea9ec59e.tar.zst
wallabag-2aac2f278f1ca63f2097f80ddbdb924dea9ec59e.zip
Add tests on listeners
Diffstat (limited to 'src/Wallabag/CoreBundle/Tests/EventListener/UserLocaleListenerTest.php')
-rw-r--r--src/Wallabag/CoreBundle/Tests/EventListener/UserLocaleListenerTest.php59
1 files changed, 59 insertions, 0 deletions
diff --git a/src/Wallabag/CoreBundle/Tests/EventListener/UserLocaleListenerTest.php b/src/Wallabag/CoreBundle/Tests/EventListener/UserLocaleListenerTest.php
new file mode 100644
index 00000000..e8a65fbf
--- /dev/null
+++ b/src/Wallabag/CoreBundle/Tests/EventListener/UserLocaleListenerTest.php
@@ -0,0 +1,59 @@
1<?php
2
3namespace Wallabag\CoreBundle\Tests\EventListener;
4
5use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;
6use Symfony\Component\HttpFoundation\Request;
7use Symfony\Component\HttpFoundation\Session\Storage\MockArraySessionStorage;
8use Symfony\Component\HttpFoundation\Session\Session;
9use Symfony\Component\Security\Http\Event\InteractiveLoginEvent;
10use Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken;
11use Wallabag\CoreBundle\EventListener\UserLocaleListener;
12use Wallabag\CoreBundle\Entity\Config;
13use Wallabag\UserBundle\Entity\User;
14
15class UserLocaleListenerTest extends KernelTestCase
16{
17 public function testWithLanguage()
18 {
19 $session = new Session(new MockArraySessionStorage());
20 $listener = new UserLocaleListener($session);
21
22 $user = new User();
23 $user->setEnabled(true);
24
25 $config = new Config($user);
26 $config->setLanguage('fr');
27
28 $user->setConfig($config);
29
30 $userToken = new UsernamePasswordToken($user, '', 'test');
31 $request = Request::create('/');
32 $event = new InteractiveLoginEvent($request, $userToken);
33
34 $listener->onInteractiveLogin($event);
35
36 $this->assertEquals('fr', $session->get('_locale'));
37 }
38
39 public function testWithoutLanguage()
40 {
41 $session = new Session(new MockArraySessionStorage());
42 $listener = new UserLocaleListener($session);
43
44 $user = new User();
45 $user->setEnabled(true);
46
47 $config = new Config($user);
48
49 $user->setConfig($config);
50
51 $userToken = new UsernamePasswordToken($user, '', 'test');
52 $request = Request::create('/');
53 $event = new InteractiveLoginEvent($request, $userToken);
54
55 $listener->onInteractiveLogin($event);
56
57 $this->assertEquals('', $session->get('_locale'));
58 }
59}