16
16
use Symfony \Component \HttpFoundation \ParameterBag ;
17
17
use Symfony \Component \HttpFoundation \Request ;
18
18
use Symfony \Component \HttpKernel \Event \FinishRequestEvent ;
19
- use Symfony \Component \HttpKernel \Event \GetResponseEvent ;
19
+ use Symfony \Component \HttpKernel \Event \RequestEvent ;
20
+ use Symfony \Component \HttpKernel \HttpKernelInterface ;
20
21
21
22
class RouteProcessorTest extends TestCase
22
23
{
@@ -28,7 +29,7 @@ public function testProcessor()
28
29
{
29
30
$ request = $ this ->mockFilledRequest ();
30
31
$ processor = new RouteProcessor ();
31
- $ processor ->addRouteData ($ this ->mockGetResponseEvent ($ request ));
32
+ $ processor ->addRouteData ($ this ->getRequestEvent ($ request ));
32
33
33
34
$ record = $ processor (['extra ' => []]);
34
35
@@ -44,7 +45,7 @@ public function testProcessorWithoutParams()
44
45
{
45
46
$ request = $ this ->mockFilledRequest ();
46
47
$ processor = new RouteProcessor (false );
47
- $ processor ->addRouteData ($ this ->mockGetResponseEvent ($ request ));
48
+ $ processor ->addRouteData ($ this ->getRequestEvent ($ request ));
48
49
49
50
$ record = $ processor (['extra ' => []]);
50
51
@@ -63,8 +64,8 @@ public function testProcessorWithSubRequests()
63
64
$ subRequest = $ this ->mockFilledRequest ($ controllerFromSubRequest );
64
65
65
66
$ processor = new RouteProcessor (false );
66
- $ processor ->addRouteData ($ this ->mockGetResponseEvent ($ mainRequest ));
67
- $ processor ->addRouteData ($ this ->mockGetResponseEvent ($ subRequest ));
67
+ $ processor ->addRouteData ($ this ->getRequestEvent ($ mainRequest ));
68
+ $ processor ->addRouteData ($ this ->getRequestEvent ($ subRequest, HttpKernelInterface:: SUB_REQUEST ));
68
69
69
70
$ record = $ processor (['extra ' => []]);
70
71
@@ -86,9 +87,9 @@ public function testFinishRequestRemovesRelatedEntry()
86
87
$ subRequest = $ this ->mockFilledRequest ('OtherController::otherMethod ' );
87
88
88
89
$ processor = new RouteProcessor (false );
89
- $ processor ->addRouteData ($ this ->mockGetResponseEvent ($ mainRequest ));
90
- $ processor ->addRouteData ($ this ->mockGetResponseEvent ($ subRequest ));
91
- $ processor ->removeRouteData ($ this ->mockFinishRequestEvent ($ subRequest ));
90
+ $ processor ->addRouteData ($ this ->getRequestEvent ($ mainRequest ));
91
+ $ processor ->addRouteData ($ this ->getRequestEvent ($ subRequest, HttpKernelInterface:: SUB_REQUEST ));
92
+ $ processor ->removeRouteData ($ this ->getFinishRequestEvent ($ subRequest ));
92
93
$ record = $ processor (['extra ' => []]);
93
94
94
95
$ this ->assertArrayHasKey ('requests ' , $ record ['extra ' ]);
@@ -98,7 +99,7 @@ public function testFinishRequestRemovesRelatedEntry()
98
99
$ record ['extra ' ]['requests ' ][0 ]
99
100
);
100
101
101
- $ processor ->removeRouteData ($ this ->mockFinishRequestEvent ($ mainRequest ));
102
+ $ processor ->removeRouteData ($ this ->getFinishRequestEvent ($ mainRequest ));
102
103
$ record = $ processor (['extra ' => []]);
103
104
104
105
$ this ->assertArrayNotHasKey ('requests ' , $ record ['extra ' ]);
@@ -108,7 +109,7 @@ public function testProcessorWithEmptyRequest()
108
109
{
109
110
$ request = $ this ->mockEmptyRequest ();
110
111
$ processor = new RouteProcessor ();
111
- $ processor ->addRouteData ($ this ->mockGetResponseEvent ($ request ));
112
+ $ processor ->addRouteData ($ this ->getRequestEvent ($ request ));
112
113
113
114
$ record = $ processor (['extra ' => []]);
114
115
$ this ->assertEquals (['extra ' => []], $ record );
@@ -122,20 +123,14 @@ public function testProcessorDoesNothingWhenNoRequest()
122
123
$ this ->assertEquals (['extra ' => []], $ record );
123
124
}
124
125
125
- private function mockGetResponseEvent (Request $ request ): GetResponseEvent
126
+ private function getRequestEvent (Request $ request, int $ requestType = HttpKernelInterface:: MASTER_REQUEST ): RequestEvent
126
127
{
127
- $ event = $ this ->getMockBuilder (GetResponseEvent::class)->disableOriginalConstructor ()->getMock ();
128
- $ event ->method ('getRequest ' )->willReturn ($ request );
129
-
130
- return $ event ;
128
+ return new RequestEvent ($ this ->createMock (HttpKernelInterface::class), $ request , $ requestType );
131
129
}
132
130
133
- private function mockFinishRequestEvent (Request $ request ): FinishRequestEvent
131
+ private function getFinishRequestEvent (Request $ request ): FinishRequestEvent
134
132
{
135
- $ event = $ this ->getMockBuilder (FinishRequestEvent::class)->disableOriginalConstructor ()->getMock ();
136
- $ event ->method ('getRequest ' )->willReturn ($ request );
137
-
138
- return $ event ;
133
+ return new FinishRequestEvent ($ this ->createMock (HttpKernelInterface::class), $ request , HttpKernelInterface::MASTER_REQUEST );
139
134
}
140
135
141
136
private function mockEmptyRequest (): Request
0 commit comments