You are here

public function RawStringFormatterTest::testStringFormatter in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/field/tests/src/Kernel/String/RawStringFormatterTest.php \Drupal\Tests\field\Kernel\String\RawStringFormatterTest::testStringFormatter()
  2. 10 core/modules/field/tests/src/Kernel/String/RawStringFormatterTest.php \Drupal\Tests\field\Kernel\String\RawStringFormatterTest::testStringFormatter()

Tests string formatter output.

File

core/modules/field/tests/src/Kernel/String/RawStringFormatterTest.php, line 111

Class

RawStringFormatterTest
Tests the raw string formatter

Namespace

Drupal\Tests\field\Kernel\String

Code

public function testStringFormatter() {
  $value = $this
    ->randomString();
  $value .= "\n\n<strong>" . $this
    ->randomString() . '</strong>';
  $value .= "\n\n" . $this
    ->randomString();
  $entity = EntityTest::create([]);
  $entity->{$this->fieldName}->value = $value;

  // Verify that all HTML is escaped and newlines are retained.
  $this
    ->renderEntityFields($entity, $this->display);
  $this
    ->assertNoRaw($value);
  $this
    ->assertRaw(nl2br(Html::escape($value)));

  // Verify the cache tags.
  $build = $entity->{$this->fieldName}
    ->view();
  $this
    ->assertTrue(!isset($build[0]['#cache']), 'The string formatter has no cache tags.');
}