1 system.test | DateTimeFunctionalTest::testDateFormatConfiguration() |
Test date format configuration.
File
- core/
modules/ system/ tests/ system.test, line 1404 - Tests for system.module.
Class
- DateTimeFunctionalTest
- Tests generic date and time handling capabilities of Backdrop.
Code
function testDateFormatConfiguration() {
// Confirm 'no custom date formats available' message appears.
$this->backdropGet('admin/config/regional/date-time/formats');
// Add custom date format.
$this->clickLink(t('Add date format'));
$date_format_name = strtolower($this->randomName(8));
$label = ucwords($date_format_name);
$date_format = 'd.m.Y - H:i';
$edit = array(
'label' => $label,
'name' => $date_format_name,
'pattern' => $date_format,
);
$this->backdropPost(NULL, $edit, t('Add format'));
$this->assertEqual($this->getUrl(), url('admin/config/regional/date-time/formats', array('absolute' => TRUE)), 'Correct page redirection.');
$this->assertText(t('Date format updated.'), 'Date format added confirmation message appears.');
$this->assertText($date_format_name, 'Custom date format appears in the date format list.');
$this->assertText(t('Delete'), 'Delete link for custom date format appears.');
// Edit custom date format.
$this->backdropGet('admin/config/regional/date-time/formats');
$this->clickLink(t('Configure'));
$edit = array(
'pattern' => 'Y m',
);
$this->backdropPost($this->getUrl(), $edit, t('Save format'));
$this->assertEqual($this->getUrl(), url('admin/config/regional/date-time/formats', array('absolute' => TRUE)), 'Correct page redirection.');
$this->assertText(t('Date format updated.'), 'Custom date format successfully updated.');
// Delete custom date format.
$this->backdropPost('admin/config/regional/date-time/formats/' . $date_format_name . '/delete', array(), t('Remove'));
$this->assertEqual($this->getUrl(), url('admin/config/regional/date-time/formats', array('absolute' => TRUE)), 'Correct page redirection.');
$this->assertRaw(t('Removed date format %format.', array('%format' => $label)), 'Custom date format removed.');
// Make sure the date does not exist in config.
$formats = config_get('system.date', 'formats');
$this->assertFalse(array_key_exists($date_format, $formats), 'Date format has been removed from config.');
}