function DateRangeFieldTest::fromToSettingDataProvider

Same name and namespace in other branches
  1. 11.x core/modules/datetime_range/tests/src/Functional/DateRangeFieldTest.php \Drupal\Tests\datetime_range\Functional\DateRangeFieldTest::fromToSettingDataProvider()

Provides data for testing the 'from_to' setting.

Return value

array An array of date settings to test the behavior of the 'from_to' setting.

1 call to DateRangeFieldTest::fromToSettingDataProvider()
DateRangeFieldTest::testFromSetting in core/modules/datetime_range/tests/src/Functional/DateRangeFieldTest.php
Tests displaying dates with the 'from_to' setting.

File

core/modules/datetime_range/tests/src/Functional/DateRangeFieldTest.php, line 1502

Class

DateRangeFieldTest
Tests Daterange field functionality.

Namespace

Drupal\Tests\datetime_range\Functional

Code

public static function fromToSettingDataProvider() : array {
  $datetime_types = [
    DateRangeItem::DATETIME_TYPE_DATE => [
      'daterange_default' => [
        DateTimeRangeConstantsInterface::START_DATE => '12/31/2012',
        DateTimeRangeConstantsInterface::END_DATE => '06/06/2013',
      ],
      'daterange_plain' => [
        DateTimeRangeConstantsInterface::START_DATE => '2012-12-31',
        DateTimeRangeConstantsInterface::END_DATE => '2013-06-06',
      ],
      'daterange_custom' => [
        DateTimeRangeConstantsInterface::START_DATE => '2012-12-31',
        DateTimeRangeConstantsInterface::END_DATE => '2013-06-06',
      ],
    ],
    DateRangeItem::DATETIME_TYPE_DATETIME => [
      'daterange_default' => [
        DateTimeRangeConstantsInterface::START_DATE => '12/31/2012 - 00:00',
        DateTimeRangeConstantsInterface::END_DATE => '06/06/2013 - 00:00',
      ],
      'daterange_plain' => [
        DateTimeRangeConstantsInterface::START_DATE => '2012-12-31T00:00:00',
        DateTimeRangeConstantsInterface::END_DATE => '2013-06-06T00:00:00',
      ],
      'daterange_custom' => [
        DateTimeRangeConstantsInterface::START_DATE => '2012-12-31T00:00:00',
        DateTimeRangeConstantsInterface::END_DATE => '2013-06-06T00:00:00',
      ],
    ],
    DateRangeItem::DATETIME_TYPE_ALLDAY => [
      'daterange_default' => [
        DateTimeRangeConstantsInterface::START_DATE => '12/31/2012',
        DateTimeRangeConstantsInterface::END_DATE => '06/06/2013',
      ],
      'daterange_plain' => [
        DateTimeRangeConstantsInterface::START_DATE => '2012-12-31',
        DateTimeRangeConstantsInterface::END_DATE => '2013-06-06',
      ],
      'daterange_custom' => [
        DateTimeRangeConstantsInterface::START_DATE => '2012-12-31',
        DateTimeRangeConstantsInterface::END_DATE => '2013-06-06',
      ],
    ],
  ];
  $return = [];
  $separator = ' THE_SEPARATOR ';
  foreach ($datetime_types as $datetime_type => $field_formatters) {
    foreach ($field_formatters as $field_formatter_type => $dates) {
      // Both start and end date.
      $return[$datetime_type . '-' . $field_formatter_type . '-both'] = [
        'expected' => [
          $dates[DateTimeRangeConstantsInterface::START_DATE] => TRUE,
          $separator => TRUE,
          $dates[DateTimeRangeConstantsInterface::END_DATE] => TRUE,
        ],
        'datetime_type' => $datetime_type,
        'field_formatter_type' => $field_formatter_type,
      ];
      // Only start date.
      $return[$datetime_type . '-' . $field_formatter_type . '-start_date'] = [
        'expected' => [
          $dates[DateTimeRangeConstantsInterface::START_DATE] => TRUE,
          $separator => FALSE,
          $dates[DateTimeRangeConstantsInterface::END_DATE] => FALSE,
        ],
        'datetime_type' => $datetime_type,
        'field_formatter_type' => $field_formatter_type,
        [
          'from_to' => DateTimeRangeConstantsInterface::START_DATE,
        ],
      ];
      // Only end date.
      $return[$datetime_type . '-' . $field_formatter_type . '-end_date'] = [
        'expected' => [
          $dates[DateTimeRangeConstantsInterface::START_DATE] => FALSE,
          $separator => FALSE,
          $dates[DateTimeRangeConstantsInterface::END_DATE] => TRUE,
        ],
        'datetime_type' => $datetime_type,
        'field_formatter_type' => $field_formatter_type,
        [
          'from_to' => DateTimeRangeConstantsInterface::END_DATE,
        ],
      ];
    }
  }
  return $return;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.