class CustomerrorPageNotFoundTest in Customerror 6
@file Automated tests CustomError.
Hierarchy
- class \CustomerrorPageNotFoundTest extends \DrupalTestCase
Expanded class hierarchy of CustomerrorPageNotFoundTest
File
- tests/
pagenotfound.test, line 8 - Automated tests CustomError.
View source
class CustomerrorPageNotFoundTest extends DrupalTestCase {
/**
* Implements getInfo().
*/
public function getInfo() {
return array(
'name' => '404 Page not found',
'desc' => 'Check that the custom error message is displayed when a page is not found.',
'group' => 'CustomError',
);
}
/**
* Tests 404 pages.
*/
public function testPageNotFoundMessage() {
/* Enable CustomError module */
$this
->drupalModuleEnable('customerror');
/* Set title and text of error message */
$error_code = 404;
$title = $this
->randomName(10, 'simpletest_');
$this
->drupalVariableSet('customerror_' . $error_code . '_title', $title);
$description = $this
->randomName(512, 'simpletest_');
$this
->drupalVariableSet('customerror_' . $error_code, $description);
/* Access error page directly, check for title and text of error message */
$this
->get(url('customerror/' . $error_code, NULL, NULL, TRUE));
$this
->assertText($title, 'Title on ' . $error_code . ' error page set when accessed directly');
$this
->assertText($description, 'Description on ' . $error_code . ' error page set when accessed directly');
/* Point Drupal to the new error message */
$this
->drupalVariableSet('site_' . $error_code, 'customerror/' . $error_code);
/* Log in as a user with basic privileges */
$user = $this
->drupalCreateUserRolePerm(array(
'access content',
));
$this
->drupalLoginUser($user);
/* Access next node ID, shouldn't exist yet. Note that this increments the nid each time it's run. */
$this
->get(url('node/' . db_next_id('{node}_nid'), NULL, NULL, TRUE));
/* Check for response code, title and text of error message */
$this
->assertResponse($error_code, 'Response code on ' . $error_code . ' error page set when accessed at non-existent URL');
$this
->assertText($title, 'Title on ' . $error_code . ' error page set when accessed at non-existent URL');
$this
->assertText($description, 'Description on ' . $error_code . ' error page set when accessed at non-existent URL');
/* Could also create node, prove it's accessible, delete it, then try to access again and prove it's gone */
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
CustomerrorPageNotFoundTest:: |
public | function | Implements getInfo(). | |
CustomerrorPageNotFoundTest:: |
public | function | Tests 404 pages. |