eck-8.x-1.x-dev/tests/src/Kernel/Migrate/d7/MigrateEckTest.php
tests/src/Kernel/Migrate/d7/MigrateEckTest.php
<?php
namespace Drupal\Tests\eck\Kernel\Migrate\d7;
use Drupal\Tests\file\Kernel\Migrate\d7\FileMigrationSetupTrait;
/**
* Tests migration of ECK entities.
*
* @group eck
*/
class MigrateEckTest extends MigrateEckTestBase {
use FileMigrationSetupTrait;
/**
* {@inheritdoc}
*/
protected static $modules = [
'comment',
'content_translation',
'eck',
'language',
'node',
'text',
'file',
];
/**
* {@inheritdoc}
*/
protected function setUp(): void {
parent::setUp();
$this->installEntitySchema('node');
$this->installConfig(static::$modules);
$this->installSchema('node', ['node_access']);
$this->installSchema('system', ['sequences']);
$this->fileMigrationSetup();
$this->executeMigrations([
'language',
'default_language',
'd7_eck_type',
'd7_eck_bundle',
'd7_comment_type',
]);
$this->migrateFields();
$this->executeMigrations([
'd7_eck',
'd7_eck_translation',
]);
}
/**
* Tests migrating Eck entity types.
*/
public function testEck() {
$results = [
[
'type' => 'simple_entity',
'bundle' => 'simple_entity',
'id' => 1,
'label' => 'Simple entity 1',
'langcode' => 'und',
'fields' => [
'field_text' => [0 => ['value' => 'Simple entity 1 text value.']],
],
],
[
'type' => 'complex_entity',
'bundle' => 'complex_entity',
'id' => '1',
'label' => 'Complex entity 1',
'langcode' => 'en',
'fields' => [
'field_text' => [
0 => ['value' => 'Complex entity text value - English version.'],
],
'field_complex_entity' => [0 => ['target_id' => '3']],
'field_file' => [
0 => [
'target_id' => '1',
'display' => '1',
'description' => '',
],
],
'field_node' => [0 => ['target_id' => '1']],
'field_simple_entities' => [
0 => ['target_id' => '1'],
1 => ['target_id' => '2'],
],
],
'translations' => [
'fr' => [
'fields' => [
'field_text' => [
0 => ['value' => 'Complex entity text value - French version.'],
],
],
],
],
],
[
'type' => 'complex_entity',
'bundle' => 'complex_entity',
'id' => '3',
'label' => 'Complex entity 3',
'langcode' => 'fr',
'fields' => [
'field_text' => [
0 => ['value' => 'Complex entity 3 text value - French version.'],
],
],
],
[
'type' => 'complex_entity',
'bundle' => 'another_bundle',
'id' => '4',
'label' => 'Entity of another complex bundle 1',
'langcode' => 'en',
'fields' => [
'field_text' => [
0 => ['value' => 'Text value of another complex bundle 1.'],
],
],
],
];
$count = \Drupal::entityQuery('simple_entity')->count()->accessCheck(FALSE)->execute();
$this->assertSame(2, $count);
$count = \Drupal::entityQuery('complex_entity')->count()->accessCheck(FALSE)->execute();
$this->assertSame(5, $count);
foreach ($results as $result) {
$this->assertEck($result);
}
}
/**
* {@inheritdoc}
*/
protected function getFileMigrationInfo() {
return [
'path' => 'public://sites/default/files/test.txt',
'size' => 14,
'base_path' => 'public://',
'plugin_id' => 'd7_file',
];
}
}
