function MediaTypeCreationTest::testMediaTypeCreationForm

Same name and namespace in other branches
  1. 11.x core/modules/media/tests/src/Functional/MediaTypeCreationTest.php \Drupal\Tests\media\Functional\MediaTypeCreationTest::testMediaTypeCreationForm()
  2. 9 core/modules/media/tests/src/Functional/MediaTypeCreationTest.php \Drupal\Tests\media\Functional\MediaTypeCreationTest::testMediaTypeCreationForm()
  3. 8.9.x core/modules/media/tests/src/Functional/MediaTypeCreationTest.php \Drupal\Tests\media\Functional\MediaTypeCreationTest::testMediaTypeCreationForm()
  4. main core/modules/media/tests/src/Functional/MediaTypeCreationTest.php \Drupal\Tests\media\Functional\MediaTypeCreationTest::testMediaTypeCreationForm()

Tests the media type creation form with only the mandatory options.

@dataProvider providerMediaTypeCreationForm

File

core/modules/media/tests/src/Functional/MediaTypeCreationTest.php, line 34

Class

MediaTypeCreationTest
Ensures that media UI works correctly without JavaScript.

Namespace

Drupal\Tests\media\Functional

Code

public function testMediaTypeCreationForm($button_label, $address, $machine_name) : void {
  $this->drupalGet('/admin/structure/media/add');
  $this->assertSession()
    ->statusCodeEquals(200);
  $this->assertSession()
    ->fieldExists('label')
    ->setValue($this->randomString());
  $this->assertSession()
    ->fieldExists('id')
    ->setValue($machine_name);
  $this->assertSession()
    ->selectExists('source')
    ->selectOption('test');
  $this->assertSession()
    ->buttonExists($button_label)
    ->press();
  $this->assertSession()
    ->statusCodeEquals(200);
  $this->assertSession()
    ->fieldValueEquals('Test config value', 'This is default value.');
  $this->assertSession()
    ->buttonExists($button_label)
    ->press();
  $this->assertSession()
    ->statusCodeEquals(200);
  $this->assertSession()
    ->addressEquals($address);
  $this->assertInstanceOf(MediaType::class, MediaType::load($machine_name));
}

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