[Security] Add tests for the anonymous authentication listener
This commit is contained in:
parent
3c2affb7e7
commit
91e6dc9fef
@ -0,0 +1,46 @@
|
||||
<?php
|
||||
|
||||
namespace Symfony\Tests\Component\Security\Http\Firewall;
|
||||
|
||||
use Symfony\Component\Security\Http\Firewall\AnonymousAuthenticationListener;
|
||||
|
||||
class AnonymousAuthenticationListenerTest extends \PHPUnit_Framework_TestCase
|
||||
{
|
||||
public function testHandleWithContextHavingAToken()
|
||||
{
|
||||
$context = $this->getMock('Symfony\Component\Security\Core\SecurityContextInterface');
|
||||
$context
|
||||
->expects($this->any())
|
||||
->method('getToken')
|
||||
->will($this->returnValue($this->getMock('Symfony\Component\Security\Core\Authentication\Token\TokenInterface')))
|
||||
;
|
||||
$context
|
||||
->expects($this->never())
|
||||
->method('setToken')
|
||||
;
|
||||
|
||||
$listener = new AnonymousAuthenticationListener($context, 'TheKey');
|
||||
$listener->handle($this->getMock('Symfony\Component\HttpKernel\Event\GetResponseEvent', array(), array(), '', false));
|
||||
}
|
||||
|
||||
public function testHandleWithContextHavingNoToken()
|
||||
{
|
||||
$context = $this->getMock('Symfony\Component\Security\Core\SecurityContextInterface');
|
||||
$context
|
||||
->expects($this->any())
|
||||
->method('getToken')
|
||||
->will($this->returnValue(null))
|
||||
;
|
||||
$context
|
||||
->expects($this->once())
|
||||
->method('setToken')
|
||||
->with(self::logicalAnd(
|
||||
$this->isInstanceOf('Symfony\Component\Security\Core\Authentication\Token\AnonymousToken'),
|
||||
$this->attributeEqualTo('key', 'TheKey')
|
||||
))
|
||||
;
|
||||
|
||||
$listener = new AnonymousAuthenticationListener($context, 'TheKey');
|
||||
$listener->handle($this->getMock('Symfony\Component\HttpKernel\Event\GetResponseEvent', array(), array(), '', false));
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user