You are here

function FrontPageTestCase::testDrupalIsFrontPage in Drupal 7

Test front page functionality.

File

modules/system/system.test, line 1650
Tests for system.module.

Class

FrontPageTestCase
Test front page functionality and administration.

Code

function testDrupalIsFrontPage() {
  $this
    ->drupalGet('');
  $this
    ->assertText(t('On front page.'), 'Path is the front page.');
  $this
    ->drupalGet('node');
  $this
    ->assertText(t('On front page.'), 'Path is the front page.');
  $this
    ->drupalGet($this->node_path);
  $this
    ->assertNoText(t('On front page.'), 'Path is not the front page.');

  // Change the front page to an invalid path.
  $edit = array(
    'site_frontpage' => 'kittens',
  );
  $this
    ->drupalPost('admin/config/system/site-information', $edit, t('Save configuration'));
  $this
    ->assertText(t("The path '@path' is either invalid or you do not have access to it.", array(
    '@path' => $edit['site_frontpage'],
  )));

  // Change the front page to a valid path.
  $edit['site_frontpage'] = $this->node_path;
  $this
    ->drupalPost('admin/config/system/site-information', $edit, t('Save configuration'));
  $this
    ->assertText(t('The configuration options have been saved.'), 'The front page path has been saved.');
  $this
    ->drupalGet('');
  $this
    ->assertText(t('On front page.'), 'Path is the front page.');
  $this
    ->drupalGet('node');
  $this
    ->assertNoText(t('On front page.'), 'Path is not the front page.');
  $this
    ->drupalGet($this->node_path);
  $this
    ->assertText(t('On front page.'), 'Path is the front page.');
}