You are here

FieldConfigurationTest.php in Video Embed Field 8.2

Same filename and directory in other branches
  1. 8 tests/src/Functional/FieldConfigurationTest.php

File

tests/src/Functional/FieldConfigurationTest.php
View source
<?php

namespace Drupal\Tests\video_embed_field\Functional;

use Drupal\Tests\BrowserTestBase;

/**
 * Integration test for the field configuration form.
 *
 * @group video_embed_field
 */
class FieldConfigurationTest extends BrowserTestBase {
  use EntityDisplaySetupTrait;
  use AdminUserTrait;

  /**
   * {@inheritdoc}
   */
  protected $defaultTheme = 'stark';

  /**
   * {@inheritdoc}
   */
  public static $modules = [
    'field_ui',
    'node',
    'video_embed_field',
  ];

  /**
   * Test the field configuration form.
   */
  public function testFieldConfiguration() {
    $this
      ->drupalLogin($this
      ->createAdminUser());
    $this
      ->createContentType([
      'type' => 'page',
      'name' => 'Page',
    ]);
    drupal_flush_all_caches();
    $this
      ->drupalGet('admin/structure/types/manage/page/fields/add-field');
    $this
      ->submitForm([
      'new_storage_type' => 'video_embed_field',
      'label' => 'Video Embed',
      'field_name' => 'video_embed',
    ], t('Save and continue'));
    $this
      ->submitForm([], t('Save field settings'));
    $this
      ->submitForm([
      'label' => 'Video Embed',
      'description' => 'Some help.',
      'required' => '1',
      'default_value_input[field_video_embed][0][value]' => 'http://example.com',
      'settings[allowed_providers][vimeo]' => 'vimeo',
      'settings[allowed_providers][youtube]' => 'youtube',
      'settings[allowed_providers][youtube_playlist]' => 'youtube_playlist',
    ], t('Save settings'));
    $this
      ->assertSession()
      ->pageTextContains('Could not find a video provider to handle the given URL.');
    $this
      ->submitForm([
      'default_value_input[field_video_embed][0][value]' => 'https://www.youtube.com/watch?v=XgYu7-DQjDQ',
    ], t('Save settings'));
    $this
      ->assertSession()
      ->pageTextContains('Saved Video Embed configuration.');
  }

}

Classes

Namesort descending Description
FieldConfigurationTest Integration test for the field configuration form.