diff --git a/core/modules/ckeditor/tests/src/FunctionalJavascript/CKEditorIntegrationTest.php b/core/modules/ckeditor/tests/src/FunctionalJavascript/CKEditorIntegrationTest.php index 90d60e40eb5..cd07517e5ac 100644 --- a/core/modules/ckeditor/tests/src/FunctionalJavascript/CKEditorIntegrationTest.php +++ b/core/modules/ckeditor/tests/src/FunctionalJavascript/CKEditorIntegrationTest.php @@ -45,7 +45,14 @@ class CKEditorIntegrationTest extends WebDriverTestBase { protected static $modules = ['node', 'ckeditor', 'filter', 'ckeditor_test']; /** - * {@inheritdoc} + * The theme to install as the default for testing. + * + * @var string + * + * @todo This test's reliance on classes makes Stark a bad fit as a base theme. + * Change the default theme to Starterkit once it is stable. + * + * @see https://www.drupal.org/project/drupal/issues/3275827 */ protected function setUp(): void { parent::setUp(); diff --git a/core/modules/media/tests/src/Functional/MediaAccessTest.php b/core/modules/media/tests/src/Functional/MediaAccessTest.php index 8bbfd14f31f..a3c8cab2c18 100644 --- a/core/modules/media/tests/src/Functional/MediaAccessTest.php +++ b/core/modules/media/tests/src/Functional/MediaAccessTest.php @@ -29,7 +29,7 @@ class MediaAccessTest extends MediaFunctionalTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; /** * {@inheritdoc} @@ -185,11 +185,13 @@ class MediaAccessTest extends MediaFunctionalTestBase { $this->clickLink('Media'); $this->assertCacheContext('user'); $assert_session->statusCodeEquals(200); - $assert_session->elementExists('css', '.view-media'); - $assert_session->pageTextContains($this->loggedInUser->getDisplayName()); - $assert_session->pageTextContains($this->nonAdminUser->getDisplayName()); - $assert_session->linkByHrefExists('/media/' . $media->id()); - $assert_session->linkByHrefExists('/media/' . $user_media->id()); + $assert_session->elementExists('css', '.views-element-container'); + // First row of the View contains media created by admin user. + $assert_session->elementTextEquals('xpath', '//div[@class="views-element-container"]//tbody/tr[1]/td[contains(@class, "views-field-uid")]/a', $this->adminUser->getDisplayName()); + $assert_session->elementTextEquals('xpath', "//div[@class='views-element-container']//tbody/tr[1]/td[contains(@class, 'views-field-name')]/a[contains(@href, '/media/{$media->id()}')]", 'Unnamed'); + // Second row of the View contains media created by non-admin user. + $assert_session->elementTextEquals('xpath', '//div[@class="views-element-container"]//tbody/tr[2]/td[contains(@class, "views-field-uid")]/a', $this->nonAdminUser->getDisplayName()); + $assert_session->elementTextEquals('xpath', "//div[@class='views-element-container']//tbody/tr[2]/td[contains(@class, 'views-field-name')]/a[contains(@href, '/media/{$user_media->id()}')]", 'Unnamed'); } /** diff --git a/core/modules/media/tests/src/Functional/MediaOverviewPageTest.php b/core/modules/media/tests/src/Functional/MediaOverviewPageTest.php index ce6146cde59..1f272ee2392 100644 --- a/core/modules/media/tests/src/Functional/MediaOverviewPageTest.php +++ b/core/modules/media/tests/src/Functional/MediaOverviewPageTest.php @@ -16,7 +16,7 @@ class MediaOverviewPageTest extends MediaFunctionalTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; /** * {@inheritdoc} @@ -133,11 +133,9 @@ class MediaOverviewPageTest extends MediaFunctionalTestBase { $this->assertSame($expected, $changed_element1->getText()); // Operations. - $edit_link1 = $assert_session->elementExists('css', 'td.views-field-operations li.edit a', $row1); - $this->assertSame('Edit', $edit_link1->getText()); + $assert_session->elementExists('css', 'td.views-field-operations li a:contains("Edit")', $row1); $assert_session->linkByHrefExists('/media/' . $media1->id() . '/edit'); - $delete_link1 = $assert_session->elementExists('css', 'td.views-field-operations li.delete a', $row1); - $this->assertSame('Delete', $delete_link1->getText()); + $assert_session->elementExists('css', 'td.views-field-operations li a:contains("Delete")', $row1); $assert_session->linkByHrefExists('/media/' . $media1->id() . '/delete'); // Make the user the owner of the unpublished media item and assert the diff --git a/core/modules/media/tests/src/FunctionalJavascript/MediaDisplayTest.php b/core/modules/media/tests/src/FunctionalJavascript/MediaDisplayTest.php index fbe516239e2..5b9305b8c28 100644 --- a/core/modules/media/tests/src/FunctionalJavascript/MediaDisplayTest.php +++ b/core/modules/media/tests/src/FunctionalJavascript/MediaDisplayTest.php @@ -20,7 +20,7 @@ class MediaDisplayTest extends MediaJavascriptTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; /** * {@inheritdoc} @@ -62,8 +62,10 @@ class MediaDisplayTest extends MediaJavascriptTestBase { $media->save(); $this->drupalGet('media/' . $media->id()); - // Verify the "name" field is really not present. - $assert_session->elementNotExists('css', '.field--name-name'); + // Verify the "name" field is really not present. The name should be in the + // h1 with no additional markup in the h1. + $assert_session->elementTextContains('css', 'h1', $media->getName()); + $assert_session->elementNotExists('css', 'h1 div'); // Enable the field on the display and verify it becomes visible on the UI. $this->drupalGet("/admin/structure/media/manage/{$media_type->id()}/display"); @@ -73,10 +75,10 @@ class MediaDisplayTest extends MediaJavascriptTestBase { $assert_session->waitForElementVisible('css', '#edit-fields-name-settings-edit'); $page->pressButton('Save'); $this->drupalGet('media/' . $media->id()); - // Verify the name is present, and its text matches what is expected. - $assert_session->elementExists('css', '.field--name-name'); - $name_field = $page->find('css', '.field--name-name .field__item'); - $this->assertSame($media->label(), $name_field->getText()); + // Verify the name is present, and its text matches what is expected. Now + // there should be markup in the h1. + $assert_session->elementTextContains('xpath', '//h1/div/div[1]', 'Name'); + $assert_session->elementTextContains('xpath', '//h1/div/div[2]', $media->getName()); // In the standard profile, there are some pre-cooked types. Make sure the // elements configured on their displays are the expected ones. @@ -100,23 +102,22 @@ class MediaDisplayTest extends MediaJavascriptTestBase { $this->drupalGet('/media/' . $image_media_id); // Check if the default media name is generated as expected. - $assert_session->elementTextContains('css', 'h1', $image_media_name); + $assert_session->elementTextContains('xpath', '//h1', $image_media_name); // Here we expect to see only the image, nothing else. // Assert only one element in the content region. - $this->assertCount(1, $page->findAll('css', '.media--type-image > div')); + $media_item = $assert_session->elementExists('xpath', '//div[@class="layout-content"]/div/div[2]'); + $assert_session->elementsCount('xpath', '/div', 1, $media_item); // Assert the image is present inside the media element. - $media_item = $assert_session->elementExists('css', '.media--type-image > div'); - $assert_session->elementExists('css', 'img', $media_item); + $media_image = $assert_session->elementExists('xpath', '//img', $media_item); // Assert that the image src uses the large image style, the label is // visually hidden, and there is no link to the image file. - $media_image = $assert_session->elementExists('css', '.media--type-image img'); /** @var \Drupal\Core\File\FileUrlGeneratorInterface $file_url_generator */ $file_url_generator = \Drupal::service('file_url_generator'); $expected_image_src = $file_url_generator->generateString(\Drupal::token()->replace('public://styles/large/public/[date:custom:Y]-[date:custom:m]/example_1.jpeg')); $this->assertStringContainsString($expected_image_src, $media_image->getAttribute('src')); - $field = $assert_session->elementExists('css', '.field--name-field-media-image'); - $assert_session->elementExists('css', '.field__label.visually-hidden', $field); - $assert_session->elementNotExists('css', 'a', $field); + $field = $assert_session->elementExists('xpath', '/div[1]', $media_item); + $assert_session->elementExists('xpath', '/div[@class="visually-hidden"]', $field); + $assert_session->elementNotExists('xpath', '//a', $field); $test_filename = $this->randomMachineName() . '.txt'; $test_filepath = 'public://' . $test_filename; @@ -134,10 +135,10 @@ class MediaDisplayTest extends MediaJavascriptTestBase { $assert_session->elementTextContains('css', 'h1', $test_filename); // Here we expect to see only the linked filename. // Assert only one element in the content region. - $this->assertCount(1, $page->findAll('css', 'article.media--type-document > div')); + $media_item = $assert_session->elementExists('xpath', '//div[@class="layout-content"]/div/div[2]'); + $assert_session->elementsCount('xpath', '/div', 1, $media_item); // Assert the file link is present, and its text matches the filename. - $assert_session->elementExists('css', 'article.media--type-document .field--name-field-media-document a'); - $link = $page->find('css', 'article.media--type-document .field--name-field-media-document a'); + $link = $assert_session->elementExists('xpath', '//a', $media_item); $this->assertSame($test_filename, $link->getText()); // Create a node type "page" to use as host entity. @@ -176,7 +177,7 @@ class MediaDisplayTest extends MediaJavascriptTestBase { \Drupal::service('entity_display.repository')->getViewDisplay('node', $node_type->id()) ->setComponent('field_related_media', [ 'type' => 'entity_reference_entity_view', - 'label' => 'hidden', + 'label' => 'above', 'settings' => [ 'view_mode' => 'full', ], @@ -192,15 +193,14 @@ class MediaDisplayTest extends MediaJavascriptTestBase { $node->save(); $this->drupalGet('/node/' . $node->id()); - // Media field is there. - $assert_session->elementExists('css', '.field--name-field-related-media'); + // Media field (field_related_media) is there. + $assert_session->pageTextContains('Related media'); // Media name element is not there. - $assert_session->elementNotExists('css', '.field--name-name'); $assert_session->pageTextNotContains($image_media_name); - // Only one element is present inside the media container. - $this->assertCount(1, $page->findAll('css', '.field--name-field-related-media article.media--type-image > div')); - // Assert the image is present. - $assert_session->elementExists('css', '.field--name-field-related-media article.media--type-image img'); + // Only one image is present. + $assert_session->elementsCount('xpath', '//img', 1); + // The image has the correct image style. + $assert_session->elementAttributeContains('xpath', '//img', 'src', '/styles/large/'); } } diff --git a/core/modules/media/tests/src/FunctionalJavascript/MediaJavascriptTestBase.php b/core/modules/media/tests/src/FunctionalJavascript/MediaJavascriptTestBase.php index 88fc891ef60..878c27f584c 100644 --- a/core/modules/media/tests/src/FunctionalJavascript/MediaJavascriptTestBase.php +++ b/core/modules/media/tests/src/FunctionalJavascript/MediaJavascriptTestBase.php @@ -51,7 +51,7 @@ abstract class MediaJavascriptTestBase extends WebDriverTestBase { */ protected function assertLinkToCreatedMedia() { $assert_session = $this->assertSession(); - $selector = '.messages a'; + $selector = 'div[aria-label="Status message"] a'; // Get the canonical media entity URL from the creation message. $link = $assert_session->elementExists('css', $selector); diff --git a/core/modules/media/tests/src/FunctionalJavascript/MediaSourceAudioVideoTest.php b/core/modules/media/tests/src/FunctionalJavascript/MediaSourceAudioVideoTest.php index a3223c7484d..bc7a3b36fd5 100644 --- a/core/modules/media/tests/src/FunctionalJavascript/MediaSourceAudioVideoTest.php +++ b/core/modules/media/tests/src/FunctionalJavascript/MediaSourceAudioVideoTest.php @@ -17,7 +17,7 @@ class MediaSourceAudioVideoTest extends MediaSourceTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; /** * Check the Audio source functionality. diff --git a/core/modules/media/tests/src/FunctionalJavascript/MediaSourceFileTest.php b/core/modules/media/tests/src/FunctionalJavascript/MediaSourceFileTest.php index 6d9c1f44bd3..af212672775 100644 --- a/core/modules/media/tests/src/FunctionalJavascript/MediaSourceFileTest.php +++ b/core/modules/media/tests/src/FunctionalJavascript/MediaSourceFileTest.php @@ -15,7 +15,7 @@ class MediaSourceFileTest extends MediaSourceTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; /** * Tests the file media source. @@ -70,7 +70,7 @@ class MediaSourceFileTest extends MediaSourceTestBase { // Make sure a link to the file is displayed. $assert_session->linkExists($test_filename); // The thumbnail should not be displayed. - $assert_session->elementNotExists('css', '.image-style-thumbnail'); + $assert_session->elementNotExists('css', 'img'); // Make sure checkbox changes the visibility of log message field. $this->drupalGet("media/1/edit"); @@ -93,7 +93,7 @@ class MediaSourceFileTest extends MediaSourceTestBase { $result = $assert_session->waitForButton('Remove'); $this->assertNotEmpty($result); $page->pressButton('Save'); - $assert_session->elementAttributeContains('css', '.image-style-thumbnail', 'src', 'text--plain.png'); + $assert_session->elementAttributeContains('css', 'img', 'src', 'text--plain.png'); // Check if the mapped name is automatically updated. $new_filename = $this->randomMachineName() . '.txt'; @@ -110,7 +110,7 @@ class MediaSourceFileTest extends MediaSourceTestBase { /** @var \Drupal\media\MediaInterface $media */ $media = \Drupal::entityTypeManager()->getStorage('media')->loadUnchanged(1); $this->assertEquals($new_filename, $media->getName()); - $assert_session->pageTextContains("$new_filename has been updated."); + $assert_session->statusMessageContains("$new_filename has been updated.", 'status'); } } diff --git a/core/modules/media/tests/src/FunctionalJavascript/MediaSourceImageTest.php b/core/modules/media/tests/src/FunctionalJavascript/MediaSourceImageTest.php index 9f17c9245e2..5e79060fc3e 100644 --- a/core/modules/media/tests/src/FunctionalJavascript/MediaSourceImageTest.php +++ b/core/modules/media/tests/src/FunctionalJavascript/MediaSourceImageTest.php @@ -21,7 +21,7 @@ class MediaSourceImageTest extends MediaSourceTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; /** * Tests the image media source. @@ -71,13 +71,14 @@ class MediaSourceImageTest extends MediaSourceTestBase { // Assert the image element is present inside the media element and that its // src attribute uses the large image style, the label is visually hidden, // and there is no link to the image file. - $image_element = $assert_session->elementExists('css', '.field--name-field-media-image img'); + $label = $assert_session->elementExists('xpath', '//div[contains(@class, "visually-hidden") and text()="Image"]'); + // The field is the parent div of the label. + $field = $label->getParent(); + $image_element = $field->find('css', 'img'); /** @var \Drupal\Core\File\FileUrlGeneratorInterface $file_url_generator */ $file_url_generator = \Drupal::service('file_url_generator'); $expected_image_src = $file_url_generator->generateString(\Drupal::token()->replace('public://styles/large/public/[date:custom:Y]-[date:custom:m]/example_1.jpeg')); $this->assertStringContainsString($expected_image_src, $image_element->getAttribute('src')); - $field = $assert_session->elementExists('css', '.field--name-field-media-image'); - $assert_session->elementExists('css', '.field__label.visually-hidden', $field); $assert_session->elementNotExists('css', 'a', $field); // Ensure the image has the correct alt attribute. diff --git a/core/modules/media/tests/src/FunctionalJavascript/MediaSourceOEmbedVideoTest.php b/core/modules/media/tests/src/FunctionalJavascript/MediaSourceOEmbedVideoTest.php index b6a8fff68b2..cab7e307343 100644 --- a/core/modules/media/tests/src/FunctionalJavascript/MediaSourceOEmbedVideoTest.php +++ b/core/modules/media/tests/src/FunctionalJavascript/MediaSourceOEmbedVideoTest.php @@ -25,7 +25,7 @@ class MediaSourceOEmbedVideoTest extends MediaSourceTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; use OEmbedTestTrait; @@ -150,7 +150,7 @@ class MediaSourceOEmbedVideoTest extends MediaSourceTestBase { // The oEmbed content iFrame should be visible. $assert_session->elementExists('css', 'iframe.media-oembed-content'); // The thumbnail should not be displayed. - $assert_session->elementNotExists('css', '.image-style-thumbnail'); + $assert_session->elementNotExists('css', 'img'); // Load the media and check that all fields are properly populated. $media = Media::load(1); @@ -201,16 +201,6 @@ class MediaSourceOEmbedVideoTest extends MediaSourceTestBase { // 'view media' permission. $this->drupalGet('media/oembed', ['query' => $query]); $assert_session->pageTextContains('By the power of Grayskull, Vimeo works!'); - $this->assertSession()->responseContains('core/themes/stable/templates/content/media-oembed-iframe.html.twig'); - $this->assertSession()->responseNotContains('core/modules/media/templates/media-oembed-iframe.html.twig'); - - // Test themes not inheriting from stable. - \Drupal::service('theme_installer')->install(['stark']); - $this->config('system.theme')->set('default', 'stark')->save(); - $this->drupalGet('media/oembed', ['query' => $query]); - $assert_session->pageTextContains('By the power of Grayskull, Vimeo works!'); - $this->assertSession()->responseNotContains('core/themes/stable/templates/content/media-oembed-iframe.html.twig'); - $this->assertSession()->responseContains('core/modules/media/templates/media-oembed-iframe.html.twig'); // Remove the 'view media' permission to test that this restricts access. $role = Role::load(AccountInterface::ANONYMOUS_ROLE); diff --git a/core/modules/media/tests/src/FunctionalJavascript/MediaStandardProfileTest.php b/core/modules/media/tests/src/FunctionalJavascript/MediaStandardProfileTest.php index 10f5409a4c2..17bf826a1c3 100644 --- a/core/modules/media/tests/src/FunctionalJavascript/MediaStandardProfileTest.php +++ b/core/modules/media/tests/src/FunctionalJavascript/MediaStandardProfileTest.php @@ -29,11 +29,6 @@ class MediaStandardProfileTest extends MediaJavascriptTestBase { */ protected static $modules = ['media_test_oembed']; - /** - * {@inheritdoc} - */ - protected $defaultTheme = 'classy'; - /** * {@inheritdoc} */ @@ -156,11 +151,11 @@ class MediaStandardProfileTest extends MediaJavascriptTestBase { // Here we expect to see only the linked filename. Assert only one element // in the content region. - $assert_session->elementsCount('css', 'article.media--type-audio > *', 1); + $assert_session->elementsCount('css', 'div.media--type-audio > *', 1); // Assert the audio file is present inside the media element and that its // src attribute matches the audio file. - $audio_element = $assert_session->elementExists('css', 'article.media--type-audio .field--name-field-media-audio-file audio > source'); + $audio_element = $assert_session->elementExists('css', 'div.media--type-audio .field--name-field-media-audio-file audio > source'); /** @var \Drupal\Core\File\FileUrlGeneratorInterface $file_url_generator */ $file_url_generator = \Drupal::service('file_url_generator'); $expected_audio_src = $file_url_generator->generateString(\Drupal::token()->replace('public://[date:custom:Y]-[date:custom:m]/' . $test_filename)); @@ -185,11 +180,11 @@ class MediaStandardProfileTest extends MediaJavascriptTestBase { // Again we expect to see only the linked filename. Assert only one element // in the content region. - $assert_session->elementsCount('css', 'article.media--type-audio > *', 1); + $assert_session->elementsCount('css', 'div.media--type-audio > *', 1); // Assert the audio file is present inside the media element and that its // src attribute matches the updated audio file. - $audio_element = $assert_session->elementExists('css', 'article.media--type-audio .field--name-field-media-audio-file audio > source'); + $audio_element = $assert_session->elementExists('css', 'div.media--type-audio .field--name-field-media-audio-file audio > source'); $expected_audio_src = $file_url_generator->generateString(\Drupal::token()->replace('public://[date:custom:Y]-[date:custom:m]/' . $test_filename_updated)); $this->assertSame($expected_audio_src, $audio_element->getAttribute('src')); } @@ -244,12 +239,12 @@ class MediaStandardProfileTest extends MediaJavascriptTestBase { // Here we expect to see only the image, nothing else. Assert only one // element in the content region. - $assert_session->elementsCount('css', 'article.media--type-image > *', 1); + $assert_session->elementsCount('css', 'div.media--type-image > *', 1); // Assert the image element is present inside the media element and that its // src attribute uses the large image style, the label is visually hidden, // and there is no link to the image file. - $image_element = $assert_session->elementExists('css', 'article.media--type-image img'); + $image_element = $assert_session->elementExists('css', 'div.media--type-image img'); /** @var \Drupal\Core\File\FileUrlGeneratorInterface $file_url_generator */ $file_url_generator = \Drupal::service('file_url_generator'); $expected_image_src = $file_url_generator->generateString(\Drupal::token()->replace('public://styles/large/public/[date:custom:Y]-[date:custom:m]/' . $image_media_name)); @@ -279,12 +274,12 @@ class MediaStandardProfileTest extends MediaJavascriptTestBase { // Again we expect to see only the image, nothing else. Assert only one // element in the content region. - $assert_session->elementsCount('css', 'article.media--type-image > *', 1); + $assert_session->elementsCount('css', 'div.media--type-image > *', 1); // Assert the image element is present inside the media element and that its // src attribute uses the large image style, the label is visually hidden, // and there is no link to the image file. - $image_element = $assert_session->elementExists('css', 'article.media--type-image img'); + $image_element = $assert_session->elementExists('css', 'div.media--type-image img'); $expected_image_src = $file_url_generator->generateString(\Drupal::token()->replace('public://styles/large/public/[date:custom:Y]-[date:custom:m]/' . $image_media_name_updated)); $this->assertStringContainsString($expected_image_src, $image_element->getAttribute('src')); $assert_session->elementExists('css', '.field--name-field-media-image .field__label.visually-hidden'); @@ -347,11 +342,11 @@ class MediaStandardProfileTest extends MediaJavascriptTestBase { // Here we expect to see only the linked filename. Assert only one element // in the content region. - $assert_session->elementsCount('css', 'article.media--type-document > *', 1); + $assert_session->elementsCount('css', 'div.media--type-document > *', 1); // Assert the file link is present in the media element and its text matches // the filename. - $link_element = $assert_session->elementExists('css', 'article.media--type-document .field--name-field-media-document a'); + $link_element = $assert_session->elementExists('css', 'div.media--type-document .field--name-field-media-document a'); $this->assertSame($test_filename, $link_element->getText()); // Assert the media name is updated through the field mapping when changing @@ -373,11 +368,11 @@ class MediaStandardProfileTest extends MediaJavascriptTestBase { // Again we expect to see only the linked filename. Assert only one element // in the content region. - $assert_session->elementsCount('css', 'article.media--type-document > *', 1); + $assert_session->elementsCount('css', 'div.media--type-document > *', 1); // Assert the file link is present in the media element and its text matches // the updated filename. - $link_element = $assert_session->elementExists('css', 'article.media--type-document .field--name-field-media-document a'); + $link_element = $assert_session->elementExists('css', 'div.media--type-document .field--name-field-media-document a'); $this->assertSame($test_filename_updated, $link_element->getText()); } @@ -435,11 +430,11 @@ class MediaStandardProfileTest extends MediaJavascriptTestBase { // Here we expect to see only the video iframe. Assert only one element in // the content region. - $assert_session->elementsCount('css', 'article.media--type-remote-video > *', 1); + $assert_session->elementsCount('css', 'div.media--type-remote-video > *', 1); // Assert the iframe is present in the media element and its src attribute // matches the URL and query parameters. - $iframe_url = $assert_session->elementExists('css', 'article.media--type-remote-video .field--name-field-media-oembed-video iframe')->getAttribute('src'); + $iframe_url = $assert_session->elementExists('css', 'div.media--type-remote-video .field--name-field-media-oembed-video iframe')->getAttribute('src'); $iframe_url = parse_url($iframe_url); $this->assertStringEndsWith('/media/oembed', $iframe_url['path']); $this->assertNotEmpty($iframe_url['query']); @@ -462,11 +457,11 @@ class MediaStandardProfileTest extends MediaJavascriptTestBase { // Again we expect to see only the video iframe. Assert only one element in // the content region. - $assert_session->elementsCount('css', 'article.media--type-remote-video > *', 1); + $assert_session->elementsCount('css', 'div.media--type-remote-video > *', 1); // Assert the iframe is present in the media element and its src attribute // matches the updated URL and query parameters. - $iframe_url = $assert_session->elementExists('css', 'article.media--type-remote-video .field--name-field-media-oembed-video iframe')->getAttribute('src'); + $iframe_url = $assert_session->elementExists('css', 'div.media--type-remote-video .field--name-field-media-oembed-video iframe')->getAttribute('src'); $iframe_url = parse_url($iframe_url); $this->assertStringEndsWith('/media/oembed', $iframe_url['path']); $this->assertNotEmpty($iframe_url['query']); @@ -532,11 +527,11 @@ class MediaStandardProfileTest extends MediaJavascriptTestBase { // Here we expect to see only the linked filename. Assert only one element // in the content region. - $assert_session->elementsCount('css', 'article.media--type-video > *', 1); + $assert_session->elementsCount('css', 'div.media--type-video > *', 1); // Assert the video element is present inside the media element and that its // src attribute matches the video file. - $video_element = $assert_session->elementExists('css', 'article.media--type-video .field--name-field-media-video-file video > source'); + $video_element = $assert_session->elementExists('css', 'div.media--type-video .field--name-field-media-video-file video > source'); /** @var \Drupal\Core\File\FileUrlGeneratorInterface $file_url_generator */ $file_url_generator = \Drupal::service('file_url_generator'); $expected_video_src = $file_url_generator->generateString(\Drupal::token()->replace('public://[date:custom:Y]-[date:custom:m]/' . $test_filename)); @@ -561,11 +556,11 @@ class MediaStandardProfileTest extends MediaJavascriptTestBase { // Again we expect to see only the linked filename. Assert only one element // in the content region. - $assert_session->elementsCount('css', 'article.media--type-video > *', 1); + $assert_session->elementsCount('css', 'div.media--type-video > *', 1); // Assert the video element is present inside the media element and that its // src attribute matches the updated video file. - $video_element = $assert_session->elementExists('css', 'article.media--type-video .field--name-field-media-video-file video > source'); + $video_element = $assert_session->elementExists('css', 'div.media--type-video .field--name-field-media-video-file video > source'); $expected_video_src = $file_url_generator->generateString(\Drupal::token()->replace('public://[date:custom:Y]-[date:custom:m]/' . $test_filename_updated)); $this->assertSame($expected_video_src, $video_element->getAttribute('src')); }