function RestfulHookMenuTestCase::testNotFoundDelivery in RESTful 7
Same name and namespace in other branches
- 7.2 tests/RestfulHookMenuTestCase.test \RestfulHookMenuTestCase::testNotFoundDelivery()
Test hijacking of api/* pages and showing proper error messages.
File
- tests/
RestfulHookMenuTestCase.test, line 102 - Contains RestfulHookMenuTestCase
Class
- RestfulHookMenuTestCase
- @file Contains RestfulHookMenuTestCase
Code
function testNotFoundDelivery() {
// Invalid URLs.
$urls = array(
'api/invalid',
);
foreach ($urls as $url) {
$result = $this
->httpRequest($url);
$body = drupal_json_decode($result['body']);
$this
->assertEqual($result['code'], '404', format_string('404 status code sent for @url url.', array(
'@url' => $url,
)));
$this
->assertTrue(strpos($result['headers'], 'application/problem+json;'), '"application/problem+json" found in invalid request.');
$this
->assertEqual($body['title'], 'Invalid URL path.', 'Correct error message.');
}
// Non-related url.
$result = $this
->httpRequest('api-api');
$this
->assertEqual($result['code'], '404', format_string('404 status code sent for @url url.', array(
'@url' => $url,
)));
$this
->assertFalse(strpos($result['headers'], 'application/problem+json;'), 'Only correct URL is hijacked.');
}