You are here

public function DateTimeNormalizerTest::testNormalize in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/serialization/tests/src/Unit/Normalizer/DateTimeNormalizerTest.php \Drupal\Tests\serialization\Unit\Normalizer\DateTimeNormalizerTest::testNormalize()
  2. 10 core/modules/serialization/tests/src/Unit/Normalizer/DateTimeNormalizerTest.php \Drupal\Tests\serialization\Unit\Normalizer\DateTimeNormalizerTest::testNormalize()

@covers ::normalize

File

core/modules/serialization/tests/src/Unit/Normalizer/DateTimeNormalizerTest.php, line 78

Class

DateTimeNormalizerTest
Unit test coverage for @DataTypes implementing DateTimeInterface.

Namespace

Drupal\Tests\serialization\Unit\Normalizer

Code

public function testNormalize() {
  $random_rfc_3339_string = $this
    ->randomMachineName();
  $drupal_date_time = $this
    ->prophesize(DateTimeNormalizerTestDrupalDateTime::class);
  $drupal_date_time
    ->setTimezone(new \DateTimeZone('Australia/Sydney'))
    ->willReturn($drupal_date_time
    ->reveal());
  $drupal_date_time
    ->format(\DateTime::RFC3339)
    ->willReturn($random_rfc_3339_string);
  $this->data
    ->getDateTime()
    ->willReturn($drupal_date_time
    ->reveal());
  $normalized = $this->normalizer
    ->normalize($this->data
    ->reveal());
  $this
    ->assertSame($random_rfc_3339_string, $normalized);
}