1.20.x date_timezone.test | public DateTimezoneTestCase::testTimezone() |
Creates one of each type of date field and check timezone handling in each.
File
- modules/
date/ tests/ date_timezone.test, line 14 - Timezone tests.
Class
Code
public function testTimezone() {
// Create date fields with combinations of various timezone handling and
// granularity.
foreach (array('date', 'datestamp', 'datetime') as $field_type) {
foreach (array('site', 'none', 'date', 'user', 'utc') as $tz_handling) {
foreach (array('year', 'month', 'day', 'hour', 'minute', 'second') as $max_granularity) {
// Skip invalid combinations.
if (in_array($max_granularity, array('year', 'month', 'day')) && $tz_handling != 'none') {
continue;
}
$field_name = "field_test";
$label = 'Test';
$granularity = date_granularity_array_from_precision($max_granularity);
$options = array(
'label' => $label,
'widget_type' => 'date_text',
'field_name' => $field_name,
'field_type' => $field_type,
'input_format' => 'custom',
'input_format_custom' => 'm/d/Y - H:i:s',
'tz_handling' => $tz_handling,
'granularity' => $granularity,
);
$this->createDateField($options);
$this->dateForm($field_name, $field_type, $max_granularity, $tz_handling);
$this->deleteDateField($label);
}
}
}
}