8000 Added GlobalVariables::getToken() · symfony/symfony@099b848 · GitHub
[go: up one dir, main page]

Skip to content

Commit 099b848

Browse files
committed
Added GlobalVariables::getToken()
1 parent 3165e13 commit 099b848

File tree

3 files changed

+45
-7
lines changed

3 files changed

+45
-7
lines changed

src/Symfony/Bundle/FrameworkBundle/CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
CHANGELOG
22
=========
33

4+
3.3.0
5+
-----
6+
7+
* Added `GlobalVariables::getToken()`
8+
49
3.2.0
510
-----
611

src/Symfony/Bundle/FrameworkBundle/Templating/GlobalVariables.php

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
use Symfony\Component\DependencyInjection\ContainerInterface;
1515
use Symfony\Component\HttpFoundation\Request;
1616
use Symfony\Component\HttpFoundation\Session\Session;
17+
use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;
1718

1819
/**
1920
* GlobalVariables is the entry point for Symfony global variables in PHP templates.
@@ -33,21 +34,27 @@ public function __construct(ContainerInterface $container)
3334
}
3435

3536
/**
36-
* Returns the current user.
37-
*
38-
* @return mixed
37+
* Returns the current token.
3938
*
40-
* @see TokenInterface::getUser()
39+
* @return TokenInterface|null
4140
*/
42-
public function getUser()
41+
public function getToken()
4342
{
4443
if (!$this->container->has('security.token_storage')) {
4544
return;
4645
}
4746

48-
$tokenStorage = $this->container->get('security.token_storage');
47+
return $this->container->get('security.token_storage')->getToken();
48+
}
4949

50-
if (!$token = $tokenStorage->getToken()) {
50+
/**
51+
* Returns the current user.
52+
*
53+
* @see TokenInterface::getUser()
54+
*/
55+
public function getUser()
56+
{
57+
if (!$token = $this->getToken()) {
5158
return;
5259
}
5360

src/Symfony/Bundle/FrameworkBundle/Tests/Templating/GlobalVariablesTest.php

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,32 @@ protected function setUp()
2626
$this->globals = new GlobalVariables($this->container);
2727
}
2828

29+
public function testGetTokenNoTokenStorage()
30+
{
31+
$this->assertNull($this->globals->getToken());
32+
}
33+
34+
public function testGetTokenNoToken()
35+
{
36+
$tokenStorage = $this->getMock('Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface');
37+
$this->container->set('security.token_storage', $tokenStorage);
38+
$this->assertNull($this->globals->getToken());
39+
}
40+
41+
public function testGetToken()
42+
{
43+
$tokenStorage = $this->getMock('Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface');
44+
45+
$this->container->set('security.token_storage', $tokenStorage);
46+
47+
$tokenStorage
48+
->expects($this->once())
49+
->method('getToken')
50+
->will($this->returnValue('token'));
51+
52+
$this->assertSame('token', $this->globals->getToken());
53+
}
54+
2955
public function testGetUserNoTokenStorage()
3056
{
3157
$this->assertNull($this->globals->getUser());

0 commit comments

Comments
 (0)
0