function EditorMediaDialogTest::testBuildForm

Same name and namespace in other branches
  1. 9 core/modules/media/tests/src/Kernel/EditorMediaDialogTest.php \Drupal\Tests\media\Kernel\EditorMediaDialogTest::testBuildForm()
  2. 8.9.x core/modules/media/tests/src/Kernel/EditorMediaDialogTest.php \Drupal\Tests\media\Kernel\EditorMediaDialogTest::testBuildForm()

Tests that the form builds successfully.

@covers ::buildForm

File

core/modules/media/tests/src/Kernel/EditorMediaDialogTest.php, line 55

Class

EditorMediaDialogTest
@coversDefaultClass \Drupal\media\Form\EditorMediaDialog[[api-linebreak]] @group media @group legacy

Namespace

Drupal\Tests\media\Kernel

Code

public function testBuildForm() : void {
  $format = FilterFormat::create([
    'filters' => [
      'media_embed' => [
        'status' => TRUE,
      ],
    ],
    'name' => 'Media embed on',
  ]);
  $editor = $this->prophesize(EditorInterface::class);
  $editor->getFilterFormat()
    ->willReturn($format);
  // Create a sample media entity to be embedded.
  $media = Media::create([
    'bundle' => $this->createMediaType('test')
      ->id(),
    'name' => 'Screaming hairy armadillo',
    'field_media_test' => $this->randomString(),
  ]);
  $media->save();
  $form_state = new FormState();
  $form_state->setUserInput([
    'editor_object' => [
      'attributes' => [
        'data-entity-type' => 'media',
        'data-entity-uuid' => $media->uuid(),
        'data-align' => 'center',
      ],
      'hasCaption' => 'false',
      'label' => $media->label(),
      'link' => '',
      'hostEntityLangcode' => $media->language()
        ->getId(),
      'classes' => '',
    ],
  ]);
  $form_state->setRequestMethod('POST');
  $form = EditorMediaDialog::create($this->container)
    ->buildForm([], $form_state, $editor->reveal());
  $this->assertNotNull($form, 'Form should have been built without errors.');
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.