Yaffs site version 1.1
[yaffs-website] / vendor / symfony / http-foundation / Tests / RequestStackTest.php
1 <?php
2
3 /*
4  * This file is part of the Symfony package.
5  *
6  * (c) Fabien Potencier <fabien@symfony.com>
7  *
8  * For the full copyright and license information, please view the LICENSE
9  * file that was distributed with this source code.
10  */
11
12 namespace Symfony\Component\HttpFoundation\Tests;
13
14 use PHPUnit\Framework\TestCase;
15 use Symfony\Component\HttpFoundation\Request;
16 use Symfony\Component\HttpFoundation\RequestStack;
17
18 class RequestStackTest extends TestCase
19 {
20     public function testGetCurrentRequest()
21     {
22         $requestStack = new RequestStack();
23         $this->assertNull($requestStack->getCurrentRequest());
24
25         $request = Request::create('/foo');
26
27         $requestStack->push($request);
28         $this->assertSame($request, $requestStack->getCurrentRequest());
29
30         $this->assertSame($request, $requestStack->pop());
31         $this->assertNull($requestStack->getCurrentRequest());
32
33         $this->assertNull($requestStack->pop());
34     }
35
36     public function testGetMasterRequest()
37     {
38         $requestStack = new RequestStack();
39         $this->assertNull($requestStack->getMasterRequest());
40
41         $masterRequest = Request::create('/foo');
42         $subRequest = Request::create('/bar');
43
44         $requestStack->push($masterRequest);
45         $requestStack->push($subRequest);
46
47         $this->assertSame($masterRequest, $requestStack->getMasterRequest());
48     }
49
50     public function testGetParentRequest()
51     {
52         $requestStack = new RequestStack();
53         $this->assertNull($requestStack->getParentRequest());
54
55         $masterRequest = Request::create('/foo');
56
57         $requestStack->push($masterRequest);
58         $this->assertNull($requestStack->getParentRequest());
59
60         $firstSubRequest = Request::create('/bar');
61
62         $requestStack->push($firstSubRequest);
63         $this->assertSame($masterRequest, $requestStack->getParentRequest());
64
65         $secondSubRequest = Request::create('/baz');
66
67         $requestStack->push($secondSubRequest);
68         $this->assertSame($firstSubRequest, $requestStack->getParentRequest());
69     }
70 }