external_entity-1.0.x-dev/tests/src/Unit/RenderTypeManagerTest.php

tests/src/Unit/RenderTypeManagerTest.php
<?php

declare(strict_types=1);

namespace Drupal\Tests\external_entity\Unit;

use Drupal\Tests\UnitTestCase;
use Drupal\external_entity\RenderTypeManager;

/**
 * @group external_entity
 * @coversDefaultClass \Drupal\external_entity\RenderTypeManager
 */
class RenderTypeManagerTest extends UnitTestCase {

  /**
   * The render type manager.
   *
   * @var \Drupal\external_entity\RenderTypeManager
   */
  protected RenderTypeManager $renderTypeManager;

  /**
   * {@inheritdoc}
   */
  protected function setUp(): void {
    parent::setUp();

    $this->renderTypeManager = $this->getMockBuilder(RenderTypeManager::class)
      ->disableOriginalConstructor()
      ->onlyMethods(['getDefinitions'])
      ->getMock();

    $this->renderTypeManager
      ->expects($this->once())
      ->method('getDefinitions')
      ->willReturn([
        'test_plugin_1' => [
          'id' => 'test_plugin_1',
          'label' => 'Test Plugin 1'
        ],
        'test_plugin_2' => [
          'id' => 'test_plugin_2',
          'label' => 'Test Plugin 2'
        ],
        'test_plugin_3' => ['id' => 'test_plugin_3'],
      ]);
  }

  /**
   * @covers ::getDefinitionOptions
   */
  public function testGetDefinitionOptions(): void {
    $options = $this->renderTypeManager->getDefinitionOptions();

    $this->assertEquals([
      'test_plugin_1' => 'Test Plugin 1',
      'test_plugin_2' => 'Test Plugin 2',
    ], $options);

    $this->assertCount(2, $options);
  }
}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc