diff options
author | Bernhard Schussek <bschussek@gmail.com> | 2013-09-16 10:03:00 +0200 |
---|---|---|
committer | Fabien Potencier <fabien.potencier@gmail.com> | 2013-09-18 09:16:41 +0200 |
commit | 5a6aaab2c35213f5ca7e57f061fbb2675e2ece35 (patch) | |
tree | 461816fef8160401dc113d3fef190fb437d01cc7 /Tests/Http/Authentication/DefaultAuthenticationFailureHandlerTest.php | |
parent | 513a354be10f0ed87933adcb788e48660f8e6ed4 (diff) | |
download | symfony-security-5a6aaab2c35213f5ca7e57f061fbb2675e2ece35.zip symfony-security-5a6aaab2c35213f5ca7e57f061fbb2675e2ece35.tar.gz symfony-security-5a6aaab2c35213f5ca7e57f061fbb2675e2ece35.tar.bz2 |
[Security] Split the component into 3 sub-components Core, ACL, HTTP
Diffstat (limited to 'Tests/Http/Authentication/DefaultAuthenticationFailureHandlerTest.php')
-rw-r--r-- | Tests/Http/Authentication/DefaultAuthenticationFailureHandlerTest.php | 174 |
1 files changed, 0 insertions, 174 deletions
diff --git a/Tests/Http/Authentication/DefaultAuthenticationFailureHandlerTest.php b/Tests/Http/Authentication/DefaultAuthenticationFailureHandlerTest.php deleted file mode 100644 index b741ced..0000000 --- a/Tests/Http/Authentication/DefaultAuthenticationFailureHandlerTest.php +++ /dev/null @@ -1,174 +0,0 @@ -<?php - -/* - * This file is part of the Symfony package. - * - * (c) Fabien Potencier <fabien@symfony.com> - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\Security\Tests\Http; - -use Symfony\Component\Security\Http\Authentication\DefaultAuthenticationFailureHandler; -use Symfony\Component\Security\Core\SecurityContextInterface; -use Symfony\Component\HttpKernel\HttpKernelInterface; - -class DefaultAuthenticationFailureHandlerTest extends \PHPUnit_Framework_TestCase -{ - private $httpKernel = null; - - private $httpUtils = null; - - private $logger = null; - - private $request = null; - - private $session = null; - - private $exception = null; - - protected function setUp() - { - $this->httpKernel = $this->getMock('Symfony\Component\HttpKernel\HttpKernelInterface'); - $this->httpUtils = $this->getMock('Symfony\Component\Security\Http\HttpUtils'); - $this->logger = $this->getMock('Psr\Log\LoggerInterface'); - - $this->session = $this->getMock('Symfony\Component\HttpFoundation\Session\SessionInterface'); - $this->request = $this->getMock('Symfony\Component\HttpFoundation\Request'); - $this->request->expects($this->any())->method('getSession')->will($this->returnValue($this->session)); - $this->exception = $this->getMock('Symfony\Component\Security\Core\Exception\AuthenticationException'); - } - - public function testForward() - { - $options = array('failure_forward' => true); - - $subRequest = $this->getRequest(); - $subRequest->attributes->expects($this->once()) - ->method('set')->with(SecurityContextInterface::AUTHENTICATION_ERROR, $this->exception); - $this->httpUtils->expects($this->once()) - ->method('createRequest')->with($this->request, '/login') - ->will($this->returnValue($subRequest)); - - $response = $this->getMock('Symfony\Component\HttpFoundation\Response'); - $this->httpKernel->expects($this->once()) - ->method('handle')->with($subRequest, HttpKernelInterface::SUB_REQUEST) - ->will($this->returnValue($response)); - - $handler = new DefaultAuthenticationFailureHandler($this->httpKernel, $this->httpUtils, $options, $this->logger); - $result = $handler->onAuthenticationFailure($this->request, $this->exception); - - $this->assertSame($response, $result); - } - - public function testRedirect() - { - $response = $this->getMock('Symfony\Component\HttpFoundation\Response'); - $this->httpUtils->expects($this->once()) - ->method('createRedirectResponse')->with($this->request, '/login') - ->will($this->returnValue($response)); - - $handler = new DefaultAuthenticationFailureHandler($this->httpKernel, $this->httpUtils, array(), $this->logger); - $result = $handler->onAuthenticationFailure($this->request, $this->exception); - - $this->assertSame($response, $result); - } - - public function testExceptionIsPersistedInSession() - { - $this->session->expects($this->once()) - ->method('set')->with(SecurityContextInterface::AUTHENTICATION_ERROR, $this->exception); - - $handler = new DefaultAuthenticationFailureHandler($this->httpKernel, $this->httpUtils, array(), $this->logger); - $handler->onAuthenticationFailure($this->request, $this->exception); - } - - public function testExceptionIsPassedInRequestOnForward() - { - $options = array('failure_forward' => true); - - $subRequest = $this->getRequest(); - $subRequest->attributes->expects($this->once()) - ->method('set')->with(SecurityContextInterface::AUTHENTICATION_ERROR, $this->exception); - - $this->httpUtils->expects($this->once()) - ->method('createRequest')->with($this->request, '/login') - ->will($this->returnValue($subRequest)); - - $this->session->expects($this->never())->method('set'); - - $handler = new DefaultAuthenticationFailureHandler($this->httpKernel, $this->httpUtils, $options, $this->logger); - $handler->onAuthenticationFailure($this->request, $this->exception); - } - - public function testRedirectIsLogged() - { - $this->logger->expects($this->once())->method('debug')->with('Redirecting to /login'); - - $handler = new DefaultAuthenticationFailureHandler($this->httpKernel, $this->httpUtils, array(), $this->logger); - $handler->onAuthenticationFailure($this->request, $this->exception); - } - - public function testForwardIsLogged() - { - $options = array('failure_forward' => true); - - $this->httpUtils->expects($this->once()) - ->method('createRequest')->with($this->request, '/login') - ->will($this->returnValue($this->getRequest())); - - $this->logger->expects($this->once())->method('debug')->with('Forwarding to /login'); - - $handler = new DefaultAuthenticationFailureHandler($this->httpKernel, $this->httpUtils, $options, $this->logger); - $handler->onAuthenticationFailure($this->request, $this->exception); - } - - public function testFailurePathCanBeOverwritten() - { - $options = array('failure_path' => '/auth/login'); - - $this->httpUtils->expects($this->once()) - ->method('createRedirectResponse')->with($this->request, '/auth/login'); - - $handler = new DefaultAuthenticationFailureHandler($this->httpKernel, $this->httpUtils, $options, $this->logger); - $handler->onAuthenticationFailure($this->request, $this->exception); - } - - public function testFailurePathCanBeOverwrittenWithRequest() - { - $this->request->expects($this->once()) - ->method('get')->with('_failure_path', null, true) - ->will($this->returnValue('/auth/login')); - - $this->httpUtils->expects($this->once()) - ->method('createRedirectResponse')->with($this->request, '/auth/login'); - - $handler = new DefaultAuthenticationFailureHandler($this->httpKernel, $this->httpUtils, array(), $this->logger); - $handler->onAuthenticationFailure($this->request, $this->exception); - } - - public function testFailurePathParameterCanBeOverwritten() - { - $options = array('failure_path_parameter' => '_my_failure_path'); - - $this->request->expects($this->once()) - ->method('get')->with('_my_failure_path', null, true) - ->will($this->returnValue('/auth/login')); - - $this->httpUtils->expects($this->once()) - ->method('createRedirectResponse')->with($this->request, '/auth/login'); - - $handler = new DefaultAuthenticationFailureHandler($this->httpKernel, $this->httpUtils, $options, $this->logger); - $handler->onAuthenticationFailure($this->request, $this->exception); - } - - private function getRequest() - { - $request = $this->getMock('Symfony\Component\HttpFoundation\Request'); - $request->attributes = $this->getMock('Symfony\Component\HttpFoundation\ParameterBag'); - - return $request; - } -} |