]> git.immae.eu Git - github/wallabag/wallabag.git/blame - tests/Wallabag/CoreBundle/EventListener/UserLocaleListenerTest.php
Jump to Symfony 3.1
[github/wallabag/wallabag.git] / tests / Wallabag / CoreBundle / EventListener / UserLocaleListenerTest.php
CommitLineData
2aac2f27
JB
1<?php
2
23634d5d 3namespace Tests\Wallabag\CoreBundle\EventListener;
2aac2f27 4
2aac2f27 5use Symfony\Component\HttpFoundation\Request;
2aac2f27 6use Symfony\Component\HttpFoundation\Session\Session;
619cc453 7use Symfony\Component\HttpFoundation\Session\Storage\MockArraySessionStorage;
2aac2f27 8use Symfony\Component\Security\Core\Authentication\Token\UsernamePasswordToken;
619cc453 9use Symfony\Component\Security\Http\Event\InteractiveLoginEvent;
2aac2f27 10use Wallabag\CoreBundle\Entity\Config;
619cc453 11use Wallabag\CoreBundle\EventListener\UserLocaleListener;
2aac2f27
JB
12use Wallabag\UserBundle\Entity\User;
13
8a493541 14class UserLocaleListenerTest extends \PHPUnit_Framework_TestCase
2aac2f27
JB
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}