annotate core/modules/field/tests/src/Kernel/TestItemWithDependenciesTest.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 129ea1e6d783
children
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 namespace Drupal\Tests\field\Kernel;
Chris@0 4
Chris@0 5 use Drupal\field\Entity\FieldConfig;
Chris@0 6 use Drupal\field\Entity\FieldStorageConfig;
Chris@0 7
Chris@0 8 /**
Chris@0 9 * Tests the new entity API for the test field with dependencies type.
Chris@0 10 *
Chris@0 11 * @group field
Chris@0 12 */
Chris@0 13 class TestItemWithDependenciesTest extends FieldKernelTestBase {
Chris@0 14
Chris@0 15 /**
Chris@0 16 * Modules to enable.
Chris@0 17 *
Chris@0 18 * @var array
Chris@0 19 */
Chris@0 20 public static $modules = ['field_test'];
Chris@0 21
Chris@0 22 /**
Chris@0 23 * The name of the field to use in this test.
Chris@0 24 *
Chris@0 25 * @var string
Chris@0 26 */
Chris@0 27 protected $fieldName = 'field_test';
Chris@0 28
Chris@0 29 /**
Chris@0 30 * Tests that field types can add dependencies to field config entities.
Chris@0 31 */
Chris@0 32 public function testTestItemWithDepenencies() {
Chris@0 33 // Create a 'test_field_with_dependencies' field and storage for validation.
Chris@0 34 FieldStorageConfig::create([
Chris@0 35 'field_name' => $this->fieldName,
Chris@0 36 'entity_type' => 'entity_test',
Chris@0 37 'type' => 'test_field_with_dependencies',
Chris@0 38 ])->save();
Chris@0 39 $field = FieldConfig::create([
Chris@0 40 'entity_type' => 'entity_test',
Chris@0 41 'field_name' => $this->fieldName,
Chris@0 42 'bundle' => 'entity_test',
Chris@0 43 ]);
Chris@0 44 $field->save();
Chris@0 45
Chris@0 46 // Validate that the field configuration entity has the expected
Chris@0 47 // dependencies.
Chris@0 48 $this->assertEqual([
Chris@0 49 'content' => ['node:article:uuid'],
Chris@0 50 'config' => ['field.storage.entity_test.field_test'],
Chris@17 51 'module' => ['entity_test', 'field_test', 'test_module'],
Chris@0 52 ], $field->getDependencies());
Chris@0 53 }
Chris@0 54
Chris@0 55 }