Skip to content

Commit 43fc4e7

Browse files
committed
Add support to message when asserting status codes and new assertion just for location
1 parent a9c464d commit 43fc4e7

1 file changed

Lines changed: 51 additions & 17 deletions

File tree

Test/Functional/WebTestCase.php

Lines changed: 51 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -183,48 +183,82 @@ protected static function getFixtureList()
183183
}
184184

185185
/**
186-
* Assert response status code is 200.
186+
* Assert HTTP response status code is 200 OK.
187187
*
188188
* @param \Symfony\Component\HttpFoundation\Response $response
189+
* @param string $message
189190
*/
190-
protected function assertResponseStatusOk($response)
191+
protected function assertResponseStatusOk($response, $message = '')
191192
{
192-
$this->assertEquals(200, $response->getStatusCode());
193+
$this->assertResponseStatusCode(200, $response, $message);
193194
}
194195

195196
/**
196-
* Alias for assertResponseStatusFound.
197+
* Assert HTTP response status code is Redirection 3xx.
197198
*
198199
* @param \Symfony\Component\HttpFoundation\Response $response
199-
* @param string|null $location
200+
* @param string $message
200201
*/
201-
protected function assertResponseStatusRedirect($response, $location = null)
202+
protected function assertResponseStatusRedirection($response, $message = '')
202203
{
203-
$this->assertResponseStatusFound($response, $location);
204+
$this->assertGreaterThanOrEqual(300, $response->getStatusCode(), $message);
205+
$this->assertLessThanOrEqual(399, $response->getStatusCode(), $message);
204206
}
205207

206208
/**
207-
* Assert response status code is 302 and if response location is the expected.
209+
* Assert HTTP response status code is 301 Moved.
208210
*
209211
* @param \Symfony\Component\HttpFoundation\Response $response
210-
* @param string|null $expectedLocation
212+
* @param string $message
211213
*/
212-
protected function assertResponseStatusFound($response, $expectedLocation = null)
214+
protected function assertResponseStatusMoved($response, $message = '')
213215
{
214-
$this->assertEquals(302, $response->getStatusCode());
216+
$this->assertResponseStatusCode(301, $response, $message);
217+
}
215218

216-
if ($expectedLocation !== null) {
217-
$this->assertEquals($expectedLocation, $response->headers->get('location'));
218-
}
219+
/**
220+
* Assert HTTP response status code is 302 Found.
221+
*
222+
* @param \Symfony\Component\HttpFoundation\Response $response
223+
* @param string $message
224+
*/
225+
protected function assertResponseStatusFound($response, $message = '')
226+
{
227+
$this->assertResponseStatusCode(302, $response, $message);
219228
}
220229

221230
/**
222-
* Assert response status code is 404.
231+
* Assert HTTP response status code is 404 Not Found.
223232
*
224233
* @param \Symfony\Component\HttpFoundation\Response $response
234+
* @param string $message
235+
*/
236+
protected function assertResponseStatusNotFound($response, $message = '')
237+
{
238+
$this->assertResponseStatusCode(404, $response, $message);
239+
}
240+
241+
/**
242+
* Assert HTTP response status code matches the expected.
243+
*
244+
* @param integer $expectedStatusCode
245+
* @param \Symfony\Component\HttpFoundation\Response $response
246+
* @param string $message
247+
*/
248+
protected function assertResponseStatusCode($expectedStatusCode, $response, $message = '')
249+
{
250+
$this->assertEquals($expectedStatusCode, $response->getStatusCode(), $message);
251+
}
252+
253+
/**
254+
* Assert HTTP response header location matches the expected.
255+
*
256+
* @param string|null $expectedLocation
257+
* @param \Symfony\Component\HttpFoundation\Response $response
258+
* @param string $message
225259
*/
226-
protected function assertResponseStatusNotFound($response)
260+
protected function assertResponseRedirectionLocation($expectedLocation, $response, $message = '')
227261
{
228-
$this->assertEquals(404, $response->getStatusCode());
262+
$this->assertEquals($expectedLocation, $response->headers->get('location'), $message);
229263
}
230264
}

0 commit comments

Comments
 (0)