public function BasicMinimalUpdatePath::testBasicMinimalUpdate in Drupal 7
Tests a successful point release update.
File
- modules/
simpletest/ tests/ upgrade/ upgrade.test, line 524
Class
- BasicMinimalUpdatePath
- Performs point release update tests on a bare database.
Code
public function testBasicMinimalUpdate() {
$this
->assertTrue($this
->performUpgrade(), 'The upgrade was completed successfully.');
// Hit the frontpage.
$this
->drupalGet('');
$this
->assertResponse(200);
// Verify that we are still logged in.
$this
->drupalGet('user');
$this
->clickLink(t('Edit'));
$this
->assertEqual($this
->getUrl(), url('user/1/edit', array(
'absolute' => TRUE,
)), 'We are still logged in as admin at the end of the upgrade.');
// Logout and verify that we can login back in with our initial password.
$this
->drupalLogout();
$this
->drupalLogin((object) array(
'uid' => 1,
'name' => 'admin',
'pass_raw' => 'admin',
));
// The previous login should've triggered a password rehash, so login one
// more time to make sure the new hash is readable.
$this
->drupalLogout();
$this
->drupalLogin((object) array(
'uid' => 1,
'name' => 'admin',
'pass_raw' => 'admin',
));
// Test that the site name is correctly displayed.
$this
->assertText('Drupal', 'The site name is correctly displayed.');
// Verify that the main admin sections are available.
$this
->drupalGet('admin');
$this
->assertText(t('Content'));
$this
->assertText(t('Appearance'));
$this
->assertText(t('People'));
$this
->assertText(t('Configuration'));
$this
->assertText(t('Reports'));
$this
->assertText(t('Structure'));
$this
->assertText(t('Modules'));
// Confirm that no {menu_links} entry exists for user/autocomplete.
$result = db_query('SELECT COUNT(*) FROM {menu_links} WHERE link_path = :user_autocomplete', array(
':user_autocomplete' => 'user/autocomplete',
))
->fetchField();
$this
->assertFalse($result, 'No {menu_links} entry exists for user/autocomplete');
// Confirm that a date format that just differs in the case can be added.
$admin_date_format = 'j M y';
$edit = array(
'date_format' => $admin_date_format,
);
$this
->drupalPost('admin/config/regional/date-time/formats/add', $edit, t('Add format'));
// Add a new date format which just differs in the case.
$admin_date_format_uppercase = 'j M Y';
$edit = array(
'date_format' => $admin_date_format_uppercase,
);
$this
->drupalPost('admin/config/regional/date-time/formats/add', $edit, t('Add format'));
$this
->assertText(t('Custom date format added.'));
// Verify that the unique key on {date_formats}.format still exists.
$this
->assertTrue(db_index_exists('date_formats', 'formats'), 'Unique key on {date_formats} exists');
}