function DatetimeFormElementTest::testDatetimeTimeOnlyValueCallback
Checks expected values are returned by ::valueCallback().
Test only applied to time-only datetime element.
@legacy-covers ::valueCallback
File
-
core/
tests/ Drupal/ KernelTests/ Core/ Datetime/ Element/ DatetimeFormElementTest.php, line 194
Class
- DatetimeFormElementTest
- Tests static callbacks returns and form submission with datetime elements.
Namespace
Drupal\KernelTests\Core\Datetime\ElementCode
public function testDatetimeTimeOnlyValueCallback() : void {
$element = [
'#type' => 'datetime',
'#date_date_element' => 'none',
'#date_time_element' => 'time',
'#date_time_format' => 'H:i:s',
];
$input = [
'time' => '14:30:00',
];
$form_state = new FormState();
$form_state->setValue('datetime_time_only', [
'time' => '14:30',
]);
$result = Datetime::valueCallback($element, $input, $form_state);
$this->assertIsArray($result);
$this->assertArrayHasKey('time', $result);
$this->assertEquals('14:30:00', $result['time']);
$this->assertArrayHasKey('object', $result);
$this->assertInstanceOf(DrupalDateTime::class, $result['object']);
$this->assertEquals('14:30:00', $result['object']->format('H:i:s'));
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.