You are here

public function EntityRevisionParamConverterTest::testConvert in Drupal 9

Same name and namespace in other branches
  1. 8 core/tests/Drupal/Tests/Core/ParamConverter/EntityRevisionParamConverterTest.php \Drupal\Tests\Core\ParamConverter\EntityRevisionParamConverterTest::testConvert()
  2. 10 core/tests/Drupal/Tests/Core/ParamConverter/EntityRevisionParamConverterTest.php \Drupal\Tests\Core\ParamConverter\EntityRevisionParamConverterTest::testConvert()

Tests the convert() method.

@dataProvider providerTestConvert

@covers ::convert

File

core/tests/Drupal/Tests/Core/ParamConverter/EntityRevisionParamConverterTest.php, line 72

Class

EntityRevisionParamConverterTest
@coversDefaultClass \Drupal\Core\ParamConverter\EntityRevisionParamConverter @group entity

Namespace

Drupal\Tests\Core\ParamConverter

Code

public function testConvert($value, array $definition, array $defaults, $expected_result) {
  $storage = $this
    ->prophesize(EntityStorageInterface::class);
  $storage
    ->loadRevision('valid_id')
    ->willReturn((object) [
    'revision_id' => 'valid_id',
  ]);
  $storage
    ->loadRevision('invalid_id')
    ->willReturn(NULL);
  $entity_type_manager = $this
    ->prophesize(EntityTypeManagerInterface::class);
  $entity_type_manager
    ->getStorage('entity_test')
    ->willReturn($storage
    ->reveal());
  $entity_repository = $this
    ->prophesize(EntityRepositoryInterface::class);
  $converter = new EntityRevisionParamConverter($entity_type_manager
    ->reveal(), $entity_repository
    ->reveal());
  $result = $converter
    ->convert($value, $definition, 'test_revision', $defaults);
  $this
    ->assertEquals($expected_result, $result);
}