You are here

public function FilterHtmlTest::providerFilterAttributes in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/filter/tests/src/Unit/FilterHtmlTest.php \Drupal\Tests\filter\Unit\FilterHtmlTest::providerFilterAttributes()

Provides data for testfilterAttributes.

Return value

array An array of test data.

File

core/modules/filter/tests/src/Unit/FilterHtmlTest.php, line 53

Class

FilterHtmlTest
@coversDefaultClass \Drupal\filter\Plugin\Filter\FilterHtml @group filter

Namespace

Drupal\Tests\filter\Unit

Code

public function providerFilterAttributes() {
  return [
    [
      '<a href="/blog" title="Blog">Blog</a>',
      '<a href="/blog">Blog</a>',
    ],
    [
      '<p dir="rtl" />',
      '<p dir="rtl"></p>',
    ],
    [
      '<p dir="bogus" />',
      '<p></p>',
    ],
    [
      '<p id="first" />',
      '<p></p>',
    ],
    // The addition of xml:lang isn't especially desired, but is still valid
    // HTML5. See https://www.drupal.org/node/1333730.
    [
      '<p id="first" lang="en">text</p>',
      '<p lang="en" xml:lang="en">text</p>',
    ],
    [
      '<p style="display: none;" />',
      '<p></p>',
    ],
    [
      '<code class="pretty invalid">foreach ($a as $b) {}</code>',
      '<code class="pretty">foreach ($a as $b) {}</code>',
    ],
    [
      '<code class="boring pretty">foreach ($a as $b) {}</code>',
      '<code class="boring pretty">foreach ($a as $b) {}</code>',
    ],
    [
      '<code class="boring    pretty ">foreach ($a as $b) {}</code>',
      '<code class="boring pretty">foreach ($a as $b) {}</code>',
    ],
    [
      '<code class="invalid alpaca">foreach ($a as $b) {}</code>',
      '<code>foreach ($a as $b) {}</code>',
    ],
    [
      '<h3 class="big">a heading</h3>',
      '<h3>a heading</h3>',
    ],
    [
      '<h3 id="first">a heading</h3>',
      '<h3 id="first">a heading</h3>',
    ],
    // Wildcard value. Case matters, so upper case doesn't match.
    [
      '<code class="align-left bold">foreach ($a as $b) {}</code>',
      '<code class="align-left">foreach ($a as $b) {}</code>',
    ],
    [
      '<code class="align-right ">foreach ($a as $b) {}</code>',
      '<code class="align-right">foreach ($a as $b) {}</code>',
    ],
    [
      '<code class="Align-right ">foreach ($a as $b) {}</code>',
      '<code>foreach ($a as $b) {}</code>',
    ],
    // Wildcard name, case is ignored.
    [
      '<ol style="display: none;" llama-wim="noble majestic"></ol>',
      '<ol llama-wim="noble majestic"></ol>',
    ],
    [
      '<ol style="display: none;" LlamA-Wim="majestic"></ol>',
      '<ol llama-wim="majestic"></ol>',
    ],
    [
      '<ol style="display: none;" llama-="noble majestic"></ol>',
      '<ol llama-="noble majestic"></ol>',
    ],
    // Both wildcard names and values.
    [
      '<ul style="display: none;" alpaca-wool="wooly-warm strong majestic"></ul>',
      '<ul alpaca-wool="wooly-warm strong"></ul>',
    ],
  ];
}