You are here

protected function FilterDateTimeTest::_testOffset in Zircon Profile 8.0

Same name and namespace in other branches
  1. 8 core/modules/datetime/src/Tests/Views/FilterDateTimeTest.php \Drupal\datetime\Tests\Views\FilterDateTimeTest::_testOffset()

Test offset operations.

1 call to FilterDateTimeTest::_testOffset()
FilterDateTimeTest::testDatetimeFilter in core/modules/datetime/src/Tests/Views/FilterDateTimeTest.php
Test filter operations.

File

core/modules/datetime/src/Tests/Views/FilterDateTimeTest.php, line 75
Contains \Drupal\datetime\Tests\Views\FilterDateTimeTest.

Class

FilterDateTimeTest
Tests the Drupal\datetime\Plugin\views\filter\Date handler.

Namespace

Drupal\datetime\Tests\Views

Code

protected function _testOffset() {
  $view = Views::getView('test_filter_datetime');
  $field = static::$field_name . '_value';

  // Test simple operations.
  $view
    ->initHandlers();
  $view->filter[$field]->operator = '>';
  $view->filter[$field]->value['type'] = 'offset';
  $view->filter[$field]->value['value'] = '+1 hour';
  $view
    ->setDisplay('default');
  $this
    ->executeView($view);
  $expected_result = [
    [
      'nid' => $this->nodes[3]
        ->id(),
    ],
  ];
  $this
    ->assertIdenticalResultset($view, $expected_result, $this->map);
  $view
    ->destroy();

  // Test offset for between operator.
  $view
    ->initHandlers();
  $view->filter[$field]->operator = 'between';
  $view->filter[$field]->value['type'] = 'offset';
  $view->filter[$field]->value['max'] = '+2 days';
  $view->filter[$field]->value['min'] = '+1 hour';
  $view
    ->setDisplay('default');
  $this
    ->executeView($view);
  $expected_result = [
    [
      'nid' => $this->nodes[3]
        ->id(),
    ],
  ];
  $this
    ->assertIdenticalResultset($view, $expected_result, $this->map);
}