+++ /dev/null
-<?php
-
-namespace Drupal\Tests\entity_reference_revisions\Kernel;
-
-use Drupal\entity_composite_relationship_test\Entity\EntityTestCompositeRelationship;
-use Drupal\field\Entity\FieldConfig;
-use Drupal\field\Entity\FieldStorageConfig;
-use Drupal\KernelTests\KernelTestBase;
-use Drupal\node\Entity\Node;
-use Drupal\node\Entity\NodeType;
-use Drupal\simpletest\UserCreationTrait;
-
-/**
- * @coversDefaultClass \Drupal\entity_reference_revisions\Plugin\Field\FieldFormatter\EntityReferenceRevisionsEntityFormatter
- * @group entity_reference_revisions
- */
-class EntityReferenceRevisionsFormatterTest extends KernelTestBase {
-
- use UserCreationTrait;
-
- /**
- * Modules to enable.
- *
- * @var array
- */
- public static $modules = [
- 'node',
- 'user',
- 'system',
- 'field',
- 'entity_reference_revisions',
- 'entity_composite_relationship_test',
- ];
-
- /**
- * {@inheritdoc}
- */
- protected function setUp() {
- parent::setUp();
- // Create article content type.
- $values = ['type' => 'article', 'name' => 'Article'];
- $node_type = NodeType::create($values);
- $node_type->save();
- $this->installEntitySchema('user');
- $this->installEntitySchema('node');
- $this->installEntitySchema('entity_test_composite');
- $this->installSchema('system', ['sequences']);
- $this->installSchema('node', ['node_access']);
-
- // Add the entity_reference_revisions field to article.
- $field_storage = FieldStorageConfig::create([
- 'field_name' => 'composite_reference',
- 'entity_type' => 'node',
- 'type' => 'entity_reference_revisions',
- 'settings' => [
- 'target_type' => 'entity_test_composite'
- ],
- ]);
- $field_storage->save();
- $field = FieldConfig::create([
- 'field_storage' => $field_storage,
- 'bundle' => 'article',
- ]);
- $field->save();
-
- $user = $this->createUser(['administer entity_test composite relationship']);
- \Drupal::currentUser()->setAccount($user);
- }
-
- public function testFormatterWithDeletedReference() {
- // Create the test composite entity.
- $text = 'Dummy text';
- $entity_test = EntityTestCompositeRelationship::create([
- 'uuid' => $text,
- 'name' => $text,
- ]);
- $entity_test->save();
-
- $text = 'Clever text';
- // Set the name to a new text.
- /** @var \Drupal\entity_composite_relationship_test\Entity\EntityTestCompositeRelationship $entity_test */
- $entity_test->name = $text;
- $entity_test->setNeedsSave(TRUE);
-
- $node = Node::create([
- 'title' => $this->randomMachineName(),
- 'type' => 'article',
- 'composite_reference' => $entity_test,
- ]);
- $node->save();
-
- // entity_reference_revisions_entity_view
- $result = $node->composite_reference->view(['type' => 'entity_reference_revisions_entity_view']);
- $this->setRawContent($this->render($result));
- $this->assertText('Clever text');
-
- // Remove the referenced entity.
- $entity_test->delete();
-
- $node = Node::load($node->id());
- $result = $node->composite_reference->view(['type' => 'entity_reference_revisions_entity_view']);
- $this->render($result);
- $this->assertNoText('Clever text');
- }
-
-}