You are here

public function UuidFormatterTest::testUuidStringFormatter in Zircon Profile 8.0

Same name and namespace in other branches
  1. 8 core/modules/field/src/Tests/String/UuidFormatterTest.php \Drupal\field\Tests\String\UuidFormatterTest::testUuidStringFormatter()

Tests string formatter output.

File

core/modules/field/src/Tests/String/UuidFormatterTest.php, line 43
Contains \Drupal\field\Tests\String\UuidFormatterTest.

Class

UuidFormatterTest
Tests the output of a UUID field.

Namespace

Drupal\field\Tests\String

Code

public function testUuidStringFormatter() {
  $entity = EntityTest::create([]);
  $entity
    ->save();
  $uuid_field = $entity
    ->get('uuid');

  // Verify default render.
  $render_array = $uuid_field
    ->view([]);
  $this
    ->assertIdentical($render_array[0]['#context']['value'], $entity
    ->uuid(), 'The rendered UUID matches the entity UUID.');
  $this
    ->assertTrue(strpos($this
    ->render($render_array), $entity
    ->uuid()), 'The rendered UUID found.');

  // Verify customized render.
  $render_array = $uuid_field
    ->view([
    'settings' => [
      'link_to_entity' => TRUE,
    ],
  ]);
  $this
    ->assertIdentical($render_array[0]['#type'], 'link');
  $this
    ->assertIdentical($render_array[0]['#title']['#context']['value'], $entity
    ->uuid());
  $this
    ->assertIdentical($render_array[0]['#url']
    ->toString(), $entity
    ->url());
  $rendered = $this
    ->render($render_array);
  $this
    ->assertTrue(strpos($rendered, $entity
    ->uuid()), 'The rendered UUID found.');
  $this
    ->assertTrue(strpos($rendered, $entity
    ->url()), 'The rendered entity URL found.');
}