From 3db26fd17711914c1f506590bb4c920e7d2e638b Mon Sep 17 00:00:00 2001 From: Lee Rowlands <lee.rowlands@previousnext.com.au> Date: Mon, 22 Oct 2018 15:36:44 +1000 Subject: [PATCH] Issue #3008109 by Lendude, andypost: Convert ResponsiveImageFieldDisplayTest to BrowserTestBase --- .../ResponsiveImageFieldDisplayTest.php | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) rename core/modules/responsive_image/{src/Tests => tests/src/Functional}/ResponsiveImageFieldDisplayTest.php (95%) diff --git a/core/modules/responsive_image/src/Tests/ResponsiveImageFieldDisplayTest.php b/core/modules/responsive_image/tests/src/Functional/ResponsiveImageFieldDisplayTest.php similarity index 95% rename from core/modules/responsive_image/src/Tests/ResponsiveImageFieldDisplayTest.php rename to core/modules/responsive_image/tests/src/Functional/ResponsiveImageFieldDisplayTest.php index 3828ab0d75e9..11697637d1da 100644 --- a/core/modules/responsive_image/src/Tests/ResponsiveImageFieldDisplayTest.php +++ b/core/modules/responsive_image/tests/src/Functional/ResponsiveImageFieldDisplayTest.php @@ -1,13 +1,14 @@ <?php -namespace Drupal\responsive_image\Tests; +namespace Drupal\Tests\responsive_image\Functional; -use Drupal\image\Tests\ImageFieldTestBase; use Drupal\image\Entity\ImageStyle; use Drupal\node\Entity\Node; use Drupal\file\Entity\File; use Drupal\responsive_image\Plugin\Field\FieldFormatter\ResponsiveImageFormatter; use Drupal\responsive_image\Entity\ResponsiveImageStyle; +use Drupal\Tests\image\Functional\ImageFieldTestBase; +use Drupal\Tests\TestFileCreationTrait; use Drupal\user\RoleInterface; /** @@ -17,6 +18,8 @@ */ class ResponsiveImageFieldDisplayTest extends ImageFieldTestBase { + use TestFileCreationTrait; + protected $dumpHeaders = TRUE; /** @@ -172,7 +175,7 @@ protected function doTestResponsiveImageFieldFormatters($scheme, $empty_styles = $this->createImageField($field_name, 'article', ['uri_scheme' => $scheme]); // Create a new node with an image attached. Make sure we use a large image // so the scale effects of the image styles always have an effect. - $test_image = current($this->drupalGetTestFiles('image', 39325)); + $test_image = current($this->getTestFiles('image', 39325)); // Create alt text for the image. $alt = $this->randomMachineName(); @@ -240,13 +243,11 @@ protected function doTestResponsiveImageFieldFormatters($scheme, $empty_styles = $display->setComponent($field_name, $display_options) ->save(); - $default_output = '<a href="' . file_url_transform_relative(file_create_url($image_uri)) . '"><picture'; $this->drupalGet('node/' . $nid); $cache_tags_header = $this->drupalGetHeader('X-Drupal-Cache-Tags'); $this->assertTrue(!preg_match('/ image_style\:/', $cache_tags_header), 'No image style cache tag found.'); - $this->removeWhiteSpace(); - $this->assertRaw($default_output, 'Image linked to file formatter displaying correctly on full node view.'); + $this->assertPattern('/<a(.*?)href="' . preg_quote(file_url_transform_relative(file_create_url($image_uri)), '/') . '"(.*?)>\s*<picture/'); // Verify that the image can be downloaded. $this->assertEqual(file_get_contents($test_image->uri), $this->drupalGet(file_create_url($image_uri)), 'File was downloaded successfully.'); if ($scheme == 'private') { @@ -369,7 +370,7 @@ public function testResponsiveImageFieldFormattersEmptyMediaQuery() { $field_name = mb_strtolower($this->randomMachineName()); $this->createImageField($field_name, 'article', ['uri_scheme' => 'public']); // Create a new node with an image attached. - $test_image = current($this->drupalGetTestFiles('image')); + $test_image = current($this->getTestFiles('image')); $nid = $this->uploadNodeImage($test_image, $field_name, 'article', $this->randomMachineName()); $node_storage->resetCache([$nid]); @@ -389,7 +390,7 @@ public function testResponsiveImageFieldFormattersEmptyMediaQuery() { $this->drupalGet('node/' . $nid); // Assert an empty media attribute is not output. - $this->assertNoPattern('@srcset="data:image/gif;base64,R0lGODlhAQABAIABAP///wAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw== 1x".+?media=".+?/><source@'); + $this->assertSession()->responseNotMatches('@srcset="data:image/gif;base64,R0lGODlhAQABAIABAP///wAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw== 1x".+?media=".+?/><source@'); // Assert the media attribute is present if it has a value. $thumbnail_style = ImageStyle::load('thumbnail'); @@ -417,7 +418,7 @@ public function testResponsiveImageFieldFormattersOneSource() { $field_name = mb_strtolower($this->randomMachineName()); $this->createImageField($field_name, 'article', ['uri_scheme' => 'public']); // Create a new node with an image attached. - $test_image = current($this->drupalGetTestFiles('image')); + $test_image = current($this->getTestFiles('image')); $nid = $this->uploadNodeImage($test_image, $field_name, 'article', $this->randomMachineName()); $node_storage->resetCache([$nid]); @@ -455,7 +456,7 @@ private function assertResponsiveImageFieldFormattersLink($link_type) { $field_settings = ['alt_field_required' => 0]; $this->createImageField($field_name, 'article', ['uri_scheme' => 'public'], $field_settings); // Create a new node with an image attached. - $test_image = current($this->drupalGetTestFiles('image')); + $test_image = current($this->getTestFiles('image')); // Test the image linked to file formatter. $display_options = [ @@ -497,16 +498,15 @@ private function assertResponsiveImageFieldFormattersLink($link_type) { // Output should contain all image styles and all breakpoints. $this->drupalGet('node/' . $nid); - $this->removeWhiteSpace(); switch ($link_type) { case 'file': // Make sure the link to the file is present. - $this->assertPattern('/<a(.*?)href="' . preg_quote(file_url_transform_relative(file_create_url($image_uri)), '/') . '"(.*?)><picture/'); + $this->assertPattern('/<a(.*?)href="' . preg_quote(file_url_transform_relative(file_create_url($image_uri)), '/') . '"(.*?)>\s*<picture/'); break; case 'content': // Make sure the link to the node is present. - $this->assertPattern('/<a(.*?)href="' . preg_quote($node->url(), '/') . '"(.*?)><picture/'); + $this->assertPattern('/<a(.*?)href="' . preg_quote($node->url(), '/') . '"(.*?)>\s*<picture/'); break; } } -- GitLab