You are here

public function DateTimeIso8601NormalizerTest::testDenormalizeValidFormats in Drupal 9

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

Tests the denormalize function with good data.

@covers ::denormalize @dataProvider providerTestDenormalizeValidFormats

File

core/modules/serialization/tests/src/Unit/Normalizer/DateTimeIso8601NormalizerTest.php, line 184

Class

DateTimeIso8601NormalizerTest
Unit test coverage for the "datetime_iso8601" @DataType.

Namespace

Drupal\Tests\serialization\Unit\Normalizer

Code

public function testDenormalizeValidFormats($type, $normalized, $expected) {
  $field_definition = $this
    ->prophesize(FieldDefinitionInterface::class);
  $field_definition
    ->getSetting('datetime_type')
    ->willReturn($type === 'date-only' ? DateTimeItem::DATETIME_TYPE_DATE : DateTimeItem::DATETIME_TYPE_DATETIME);
  $denormalized = $this->normalizer
    ->denormalize($normalized, DateTimeIso8601::class, NULL, [
    'field_definition' => $field_definition
      ->reveal(),
  ]);
  $this
    ->assertSame($expected, $denormalized);
}