You are here

public function EntityFilteringThemeTest::testThemedEntity in Drupal 10

Same name and namespace in other branches
  1. 8 core/modules/system/tests/src/Functional/Theme/EntityFilteringThemeTest.php \Drupal\Tests\system\Functional\Theme\EntityFilteringThemeTest::testThemedEntity()
  2. 9 core/modules/system/tests/src/Functional/Theme/EntityFilteringThemeTest.php \Drupal\Tests\system\Functional\Theme\EntityFilteringThemeTest::testThemedEntity()

Checks each themed entity for XSS filtering in available themes.

File

core/modules/system/tests/src/Functional/Theme/EntityFilteringThemeTest.php, line 143

Class

EntityFilteringThemeTest
Tests themed output for each entity type in all available themes to ensure entity labels are filtered for XSS.

Namespace

Drupal\Tests\system\Functional\Theme

Code

public function testThemedEntity() {

  // Check paths where various view modes of the entities are rendered.
  $paths = [
    'user',
    'node',
    'node/' . $this->node
      ->id(),
    'taxonomy/term/' . $this->term
      ->id(),
  ];

  // Check each path in all available themes.
  foreach ($this->themes as $name => $theme) {
    $this
      ->config('system.theme')
      ->set('default', $name)
      ->save();
    foreach ($paths as $path) {
      $this
        ->drupalGet($path);
      $this
        ->assertSession()
        ->statusCodeEquals(200);
      $this
        ->assertSession()
        ->responseNotContains($this->xssLabel);
    }
  }
}