You are here

public function EntityTypeRepositoryTest::testGetEntityTypeFromClass in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/tests/Drupal/Tests/Core/Entity/EntityTypeRepositoryTest.php \Drupal\Tests\Core\Entity\EntityTypeRepositoryTest::testGetEntityTypeFromClass()

@covers ::getEntityTypeFromClass

File

core/tests/Drupal/Tests/Core/Entity/EntityTypeRepositoryTest.php, line 113
Contains \Drupal\Tests\Core\Entity\EntityTypeRepositoryTest.

Class

EntityTypeRepositoryTest
@coversDefaultClass \Drupal\Core\Entity\EntityTypeRepository @group Entity

Namespace

Drupal\Tests\Core\Entity

Code

public function testGetEntityTypeFromClass() {
  $apple = $this
    ->prophesize(EntityTypeInterface::class);
  $banana = $this
    ->prophesize(EntityTypeInterface::class);
  $this
    ->setUpEntityTypeDefinitions([
    'apple' => $apple,
    'banana' => $banana,
  ]);
  $apple
    ->getOriginalClass()
    ->willReturn('\\Drupal\\apple\\Entity\\Apple');
  $banana
    ->getOriginalClass()
    ->willReturn('\\Drupal\\banana\\Entity\\Banana');
  $banana
    ->getClass()
    ->willReturn('\\Drupal\\mango\\Entity\\Mango');
  $banana
    ->id()
    ->willReturn('banana')
    ->shouldBeCalledTimes(2);
  $entity_type_id = $this->entityTypeRepository
    ->getEntityTypeFromClass('\\Drupal\\banana\\Entity\\Banana');
  $this
    ->assertSame('banana', $entity_type_id);
  $entity_type_id = $this->entityTypeRepository
    ->getEntityTypeFromClass('\\Drupal\\mango\\Entity\\Mango');
  $this
    ->assertSame('banana', $entity_type_id);
}