You are here

protected function MediaEmbedFilterTestBase::setUp in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/media/tests/src/Kernel/MediaEmbedFilterTestBase.php \Drupal\Tests\media\Kernel\MediaEmbedFilterTestBase::setUp()

Overrides KernelTestBase::setUp

2 calls to MediaEmbedFilterTestBase::setUp()
MediaEmbedFilterDisabledIntegrationsTest::setUp in core/modules/media/tests/src/Kernel/MediaEmbedFilterDisabledIntegrationsTest.php
MediaEmbedFilterTranslationTest::setUp in core/modules/media/tests/src/Kernel/MediaEmbedFilterTranslationTest.php
2 methods override MediaEmbedFilterTestBase::setUp()
MediaEmbedFilterDisabledIntegrationsTest::setUp in core/modules/media/tests/src/Kernel/MediaEmbedFilterDisabledIntegrationsTest.php
MediaEmbedFilterTranslationTest::setUp in core/modules/media/tests/src/Kernel/MediaEmbedFilterTranslationTest.php

File

core/modules/media/tests/src/Kernel/MediaEmbedFilterTestBase.php, line 70

Class

MediaEmbedFilterTestBase
Base class for Media Embed filter tests.

Namespace

Drupal\Tests\media\Kernel

Code

protected function setUp() {
  parent::setUp();
  $this
    ->installSchema('file', [
    'file_usage',
  ]);
  $this
    ->installSchema('system', 'sequences');
  $this
    ->installEntitySchema('file');
  $this
    ->installEntitySchema('media');
  $this
    ->installEntitySchema('user');
  $this
    ->installConfig('filter');
  $this
    ->installConfig('image');
  $this
    ->installConfig('media');
  $this
    ->installConfig('system');

  // Create a user with required permissions. Ensure that we don't use user 1
  // because that user is treated in special ways by access control handlers.
  $admin_user = $this
    ->drupalCreateUser([]);
  $user = $this
    ->drupalCreateUser([
    'access content',
    'view media',
  ]);
  $this->container
    ->set('current_user', $user);
  $this->image = File::create([
    'uri' => $this
      ->getTestFiles('image')[0]->uri,
    'uid' => 2,
  ]);
  $this->image
    ->setPermanent();
  $this->image
    ->save();

  // Create a sample media entity to be embedded.
  $media_type = $this
    ->createMediaType('image', [
    'id' => 'image',
  ]);
  EntityViewMode::create([
    'id' => 'media.foobar',
    'targetEntityType' => 'media',
    'status' => TRUE,
    'enabled' => TRUE,
    'label' => $this
      ->randomMachineName(),
  ])
    ->save();
  EntityViewDisplay::create([
    'targetEntityType' => 'media',
    'bundle' => $media_type
      ->id(),
    'mode' => 'foobar',
    'status' => TRUE,
  ])
    ->removeComponent('thumbnail')
    ->removeComponent('created')
    ->removeComponent('uid')
    ->setComponent('field_media_image', [
    'label' => 'visually_hidden',
    'type' => 'image',
    'settings' => [
      'image_style' => 'medium',
      'image_link' => 'file',
    ],
    'third_party_settings' => [],
    'weight' => 1,
    'region' => 'content',
  ])
    ->save();
  $media = Media::create([
    'uuid' => static::EMBEDDED_ENTITY_UUID,
    'bundle' => 'image',
    'name' => 'Screaming hairy armadillo',
    'field_media_image' => [
      [
        'target_id' => $this->image
          ->id(),
        'alt' => 'default alt',
        'title' => 'default title',
      ],
    ],
  ])
    ->setOwner($user);
  $media
    ->save();
  $this->embeddedEntity = $media;
}