factory_lollipop-1.0.x-dev/tests/modules/factory_lollipop_test/tests/src/Kernel/MediaTypeFactoryTest.php

tests/modules/factory_lollipop_test/tests/src/Kernel/MediaTypeFactoryTest.php
<?php

namespace Drupal\Tests\factory_lollipop_test\Kernel;

use Drupal\media\Entity\MediaType;
use Drupal\media\MediaTypeInterface;
use Drupal\media\Plugin\media\Source\Image;
use Drupal\Tests\factory_lollipop\Kernel\LollipopKernelTestBase;

/**
 * Example of Factory Lollipop usage for Media Type.
 *
 * @group factory_lollipop
 * @group factory_lollipop_example
 */
class MediaTypeFactoryTest extends LollipopKernelTestBase {

  /**
   * The Factory Lollipop fixture factory.
   *
   * @var \Drupal\factory_lollipop\FixtureFactory
   */
  protected $factoryLollipop;

  /**
   * {@inheritdoc}
   */
  protected static $modules = [
    'media',
    'file',
    'image',
    'factory_lollipop_test',
  ];

  /**
   * Ensure a defined Media Type can be created.
   *
   * @covers \Drupal\factory_lollipop\FixtureFactory::loadDefinitions
   * @covers \Drupal\factory_lollipop\FixtureFactory::define
   * @covers \Drupal\factory_lollipop\FixtureFactory::create
   * @covers \Drupal\factory_lollipop\FactoryType\MediaTypeFactoryType::create
   */
  public function testDefine(): void {
    $this->factoryLollipop->loadDefinitions(['media_type_image']);

    // Ensure the association (Media Type generation) is made on ::create().
    $media_type = MediaType::load('media_image');
    self::assertNull($media_type);

    /** @var \Drupal\media\MediaTypeInterface $media_type */
    $media_type = $this->factoryLollipop->create('media_type_image');
    self::assertInstanceOf(MediaTypeInterface::class, $media_type);
    self::assertEquals('media_image', $media_type->id());
    self::assertInstanceOf(Image::class, $media_type->getSource());

    // Media Type has been created with proper id.
    $media_type = MediaType::load('media_image');
    self::assertNotNull($media_type);
  }

}

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

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