You are here

public function PlaceholderGeneratorTest::testCreatePlaceholderGeneratesValidHtmlMarkup in Drupal 9

Same name and namespace in other branches
  1. 8 core/tests/Drupal/Tests/Core/Render/PlaceholderGeneratorTest.php \Drupal\Tests\Core\Render\PlaceholderGeneratorTest::testCreatePlaceholderGeneratesValidHtmlMarkup()

@covers ::createPlaceholder @dataProvider providerCreatePlaceholderGeneratesValidHtmlMarkup

Ensure that the generated placeholder markup is valid. If it is not, then simply using DOMDocument on HTML that contains placeholders may modify the placeholders' markup, which would make it impossible to replace the placeholders: the placeholder markup in #attached versus that in the HTML processed by DOMDocument would no longer match.

File

core/tests/Drupal/Tests/Core/Render/PlaceholderGeneratorTest.php, line 30

Class

PlaceholderGeneratorTest
@coversDefaultClass \Drupal\Core\Render\PlaceholderGenerator @group Render

Namespace

Drupal\Tests\Core\Render

Code

public function testCreatePlaceholderGeneratesValidHtmlMarkup(array $element) {
  $build = $this->placeholderGenerator
    ->createPlaceholder($element);
  $original_placeholder_markup = (string) $build['#markup'];
  $processed_placeholder_markup = Html::serialize(Html::load($build['#markup']));
  $this
    ->assertEquals($original_placeholder_markup, $processed_placeholder_markup);
}