public function DateRecurBasicWidgetTest::testDefaultValues in Recurring Dates Field 3.x
Same name and namespace in other branches
- 8.2 tests/src/Functional/DateRecurBasicWidgetTest.php \Drupal\Tests\date_recur\Functional\DateRecurBasicWidgetTest::testDefaultValues()
- 3.0.x tests/src/Functional/DateRecurBasicWidgetTest.php \Drupal\Tests\date_recur\Functional\DateRecurBasicWidgetTest::testDefaultValues()
- 3.1.x tests/src/Functional/DateRecurBasicWidgetTest.php \Drupal\Tests\date_recur\Functional\DateRecurBasicWidgetTest::testDefaultValues()
Tests default values appear in widget.
File
- tests/
src/ Functional/ DateRecurBasicWidgetTest.php, line 194
Class
- DateRecurBasicWidgetTest
- Tests date recur basic widget.
Namespace
Drupal\Tests\date_recur\FunctionalCode
public function testDefaultValues() {
/** @var \Drupal\Core\Entity\EntityFieldManagerInterface $entityFieldManager */
$entityFieldManager = \Drupal::service('entity_field.manager');
$baseFields = $entityFieldManager
->getBaseFieldDefinitions('dr_entity_test');
$baseFieldOverride = BaseFieldOverride::createFromBaseFieldDefinition($baseFields['dr'], 'dr_entity_test');
// Default values need to evaluate FALSE per DateRecurItem::isEmpty
// otherwise the values will be cleared out before display.
$baseFieldOverride
->setDefaultValue([
[
'default_date_type' => 'relative',
'default_date' => '12th April 2013 3pm',
'default_end_date_type' => 'relative',
'default_end_date' => '12th April 2013 4pm',
'default_date_time_zone' => 'Europe/Oslo',
'default_time_zone' => 'Indian/Christmas',
'default_rrule' => 'FREQ=WEEKLY;COUNT=995',
],
]);
$baseFieldOverride
->save();
$url = Url::fromRoute('entity.dr_entity_test.add_form');
$this
->drupalGet($url);
// 3pm/4pm Oslo (UTC+2) -> 8pm/9pm Christmas (UTC+7).
$this
->assertSession()
->fieldValueEquals('dr[0][value][date]', '2013-04-12');
$this
->assertSession()
->fieldValueEquals('dr[0][value][time]', '20:00:00');
$this
->assertSession()
->fieldValueEquals('dr[0][end_value][date]', '2013-04-12');
$this
->assertSession()
->fieldValueEquals('dr[0][end_value][time]', '21:00:00');
$this
->assertSession()
->fieldValueEquals('dr[0][timezone]', 'Indian/Christmas');
$this
->assertSession()
->fieldValueEquals('dr[0][rrule]', 'FREQ=WEEKLY;COUNT=995');
}