class FragmentListenerTest in Zircon Profile 8
Same name and namespace in other branches
- 8.0 vendor/symfony/http-kernel/Tests/EventListener/FragmentListenerTest.php \Symfony\Component\HttpKernel\Tests\EventListener\FragmentListenerTest
Hierarchy
- class \Symfony\Component\HttpKernel\Tests\EventListener\FragmentListenerTest extends \Symfony\Component\HttpKernel\Tests\EventListener\PHPUnit_Framework_TestCase
Expanded class hierarchy of FragmentListenerTest
File
- vendor/
symfony/ http-kernel/ Tests/ EventListener/ FragmentListenerTest.php, line 20
Namespace
Symfony\Component\HttpKernel\Tests\EventListenerView source
class FragmentListenerTest extends \PHPUnit_Framework_TestCase {
public function testOnlyTriggeredOnFragmentRoute() {
$request = Request::create('http://example.com/foo?_path=foo%3Dbar%26_controller%3Dfoo');
$listener = new FragmentListener(new UriSigner('foo'));
$event = $this
->createGetResponseEvent($request);
$expected = $request->attributes
->all();
$listener
->onKernelRequest($event);
$this
->assertEquals($expected, $request->attributes
->all());
$this
->assertTrue($request->query
->has('_path'));
}
public function testOnlyTriggeredIfControllerWasNotDefinedYet() {
$request = Request::create('http://example.com/_fragment?_path=foo%3Dbar%26_controller%3Dfoo');
$request->attributes
->set('_controller', 'bar');
$listener = new FragmentListener(new UriSigner('foo'));
$event = $this
->createGetResponseEvent($request, HttpKernelInterface::SUB_REQUEST);
$expected = $request->attributes
->all();
$listener
->onKernelRequest($event);
$this
->assertEquals($expected, $request->attributes
->all());
}
/**
* @expectedException \Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException
*/
public function testAccessDeniedWithNonSafeMethods() {
$request = Request::create('http://example.com/_fragment', 'POST');
$listener = new FragmentListener(new UriSigner('foo'));
$event = $this
->createGetResponseEvent($request);
$listener
->onKernelRequest($event);
}
/**
* @expectedException \Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException
*/
public function testAccessDeniedWithWrongSignature() {
$request = Request::create('http://example.com/_fragment', 'GET', array(), array(), array(), array(
'REMOTE_ADDR' => '10.0.0.1',
));
$listener = new FragmentListener(new UriSigner('foo'));
$event = $this
->createGetResponseEvent($request);
$listener
->onKernelRequest($event);
}
public function testWithSignature() {
$signer = new UriSigner('foo');
$request = Request::create($signer
->sign('http://example.com/_fragment?_path=foo%3Dbar%26_controller%3Dfoo'), 'GET', array(), array(), array(), array(
'REMOTE_ADDR' => '10.0.0.1',
));
$listener = new FragmentListener($signer);
$event = $this
->createGetResponseEvent($request);
$listener
->onKernelRequest($event);
$this
->assertEquals(array(
'foo' => 'bar',
'_controller' => 'foo',
), $request->attributes
->get('_route_params'));
$this
->assertFalse($request->query
->has('_path'));
}
private function createGetResponseEvent(Request $request, $requestType = HttpKernelInterface::MASTER_REQUEST) {
return new GetResponseEvent($this
->getMock('Symfony\\Component\\HttpKernel\\HttpKernelInterface'), $request, $requestType);
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
FragmentListenerTest:: |
private | function | ||
FragmentListenerTest:: |
public | function | @expectedException \Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException | |
FragmentListenerTest:: |
public | function | @expectedException \Symfony\Component\HttpKernel\Exception\AccessDeniedHttpException | |
FragmentListenerTest:: |
public | function | ||
FragmentListenerTest:: |
public | function | ||
FragmentListenerTest:: |
public | function |