You are here

public function ViewsHandlerFieldDateTest::testFieldDate in Views (for Drupal 7) 7.3

File

tests/handlers/views_handler_field_date.test, line 36
Definition of ViewsHandlerFieldDateTest.

Class

ViewsHandlerFieldDateTest
Tests the core views_handler_field_date handler.

Code

public function testFieldDate() {
  $view = $this
    ->getBasicView();
  $view->display['default']->handler
    ->override_option('fields', array(
    'created' => array(
      'id' => 'created',
      'table' => 'views_test',
      'field' => 'created',
      'relationship' => 'none',
      // c is iso 8601 date format.
      // @see http://php.net/manual/en/function.date.php
      'custom_date_format' => 'c',
      'second_date_format' => 'custom',
      'second_date_format_custom' => 'c',
    ),
  ));
  $time = gmmktime(0, 0, 0, 1, 1, 2000);
  $this
    ->executeView($view);
  $timezones = array(
    NULL,
    'UTC',
    'America/New_York',
  );
  foreach ($timezones as $timezone) {
    $dates = array(
      'small' => format_date($time, 'small', '', $timezone),
      'medium' => format_date($time, 'medium', '', $timezone),
      'large' => format_date($time, 'large', '', $timezone),
      'custom' => format_date($time, 'custom', 'c', $timezone),
      'today time ago custom' => format_date($time, 'custom', 'c', $timezone),
      'today time ago' => t('%time ago', array(
        '%time' => format_interval(120, 2),
      )),
    );
    $this
      ->assertRenderedDatesEqual($view, $dates, $timezone);
  }
  $intervals = array(
    'raw time ago' => format_interval(REQUEST_TIME - $time, 2),
    'time ago' => t('%time ago', array(
      '%time' => format_interval(REQUEST_TIME - $time, 2),
    )),
  );
  $this
    ->assertRenderedDatesEqual($view, $intervals);
}