function PerComponentEntityFormDisplayTest::testImport

Same name and namespace in other branches
  1. 9 core/modules/migrate/tests/src/Unit/destination/PerComponentEntityFormDisplayTest.php \Drupal\Tests\migrate\Unit\destination\PerComponentEntityFormDisplayTest::testImport()
  2. 8.9.x core/modules/migrate/tests/src/Unit/destination/PerComponentEntityFormDisplayTest.php \Drupal\Tests\migrate\Unit\destination\PerComponentEntityFormDisplayTest::testImport()
  3. 11.x core/modules/migrate/tests/src/Unit/destination/PerComponentEntityFormDisplayTest.php \Drupal\Tests\migrate\Unit\destination\PerComponentEntityFormDisplayTest::testImport()

Tests the entity display import method.

File

core/modules/migrate/tests/src/Unit/destination/PerComponentEntityFormDisplayTest.php, line 21

Class

PerComponentEntityFormDisplayTest
Tests the entity display destination plugin.

Namespace

Drupal\Tests\migrate\Unit\destination

Code

public function testImport() : void {
  $values = [
    'entity_type' => 'entity_type_test',
    'bundle' => 'bundle_test',
    'form_mode' => 'form_mode_test',
    'field_name' => 'field_name_test',
    'options' => [
      'test setting',
    ],
  ];
  $row = new Row();
  foreach ($values as $key => $value) {
    $row->setDestinationProperty($key, $value);
  }
  $entity = $this->getMockBuilder('Drupal\\Core\\Entity\\Entity\\EntityFormDisplay')
    ->disableOriginalConstructor()
    ->getMock();
  $entity->expects($this->once())
    ->method('setComponent')
    ->with('field_name_test', [
    'test setting',
  ])
    ->willReturnSelf();
  $entity->expects($this->once())
    ->method('save')
    ->with();
  $plugin = new TestPerComponentEntityFormDisplay($entity);
  $this->assertSame([
    'entity_type_test',
    'bundle_test',
    'form_mode_test',
    'field_name_test',
  ], $plugin->import($row));
  $this->assertSame([
    'entity_type_test',
    'bundle_test',
    'form_mode_test',
  ], $plugin->getTestValues());
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.