Пример #1
0
 public function testSetData_differentTimezones()
 {
     $field = new TimeField('name', array('data_timezone' => 'America/New_York', 'user_timezone' => 'Pacific/Tahiti', 'type' => TimeField::STRING, 'with_seconds' => true));
     $dateTime = new \DateTime('03:04:05 America/New_York');
     $field->setData($dateTime->format('H:i:s'));
     $dateTime = clone $dateTime;
     $dateTime->setTimezone(new \DateTimeZone('Pacific/Tahiti'));
     $displayedData = array('hour' => (int) $dateTime->format('H'), 'minute' => (int) $dateTime->format('i'), 'second' => (int) $dateTime->format('s'));
     $this->assertEquals($displayedData, $field->getDisplayedData());
 }
Пример #2
0
    public function testRenderAsChoices_nonRequired()
    {
        $field = new TimeField('name', array('hours' => array(3, 4), 'minutes' => array(5, 6), 'widget' => TimeField::CHOICE, 'data_timezone' => 'UTC', 'user_timezone' => 'UTC'));
        $field->setRequired(false);
        $field->setData(new \DateTime('04:05 UTC'));
        $html = <<<EOF
<select id="name_hour" name="name[hour]" class="foobar">
<option value=""></option>
<option value="3">03</option>
<option value="4" selected="selected">04</option>
</select>:<select id="name_minute" name="name[minute]" class="foobar">
<option value=""></option>
<option value="5" selected="selected">05</option>
<option value="6">06</option>
</select>
EOF;
        $this->assertEquals($html, $field->render(array('class' => 'foobar')));
    }