diff --git a/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeCompleteETTest.php b/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeCompleteETTest.php index 66afe54f9d..c8bc20a8e9 100644 --- a/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeCompleteETTest.php +++ b/core/modules/node/tests/src/Kernel/Migrate/d7/MigrateNodeCompleteETTest.php @@ -76,6 +76,7 @@ protected function setUp() { 'd7_language_content_settings', 'd7_comment_field', 'd7_comment_field_instance', + 'd7_entity_translation_settings', 'd7_node_complete', ]); $this->nodeStorage = $this->container->get('entity_type.manager') @@ -121,12 +122,8 @@ public function testNodeCompleteMigration() { ->execute() ->fetchAll(\PDO::FETCH_ASSOC)); - // Now load and test each revision, - // including the field 'field_text_long_plain' which has text reflecting the - // revision. Note that source node 1, uses entity translation which does - // not have a migration for revisions of translations. - // See https://www.drupal.org/project/drupal/issues/3076447. - $data = $this->expectedRevisionEntityData()[0]; + // Now load and test each revision. + $data = $this->expectedRevisionEntityData(); foreach ($this->expectedNodeFieldRevisionTable() as $key => $revision) { $this->assertRevision($revision, $data[$key]); } @@ -145,20 +142,12 @@ protected function assertRevision(array $revision, array $data) { $actual = $this->nodeStorage->loadRevision($revision['vid']) ->getTranslation($revision['langcode']); $this->assertInstanceOf(NodeInterface::class, $actual); - $this->assertSame($revision['title'], $actual->getTitle(), sprintf("Title '%s' does not match actual '%s' for revision '%d' langcode '%s'", $revision['title'], $actual->getTitle(), $revision['vid'], $revision['langcode'])); - $this->assertSame($revision['revision_translation_affected'], $actual->get('revision_translation_affected')->value, sprintf("revision_translation_affected '%s' does not match actual '%s' for revision '%d' langcode '%s'", $revision['revision_translation_affected'], $actual->get('revision_translation_affected')->value, $revision['vid'], $revision['langcode'])); - - if ($data['created']) { - $this->assertSame($data['created'], $actual->getRevisionCreationTime(), sprintf("Created time '%s' does not match actual '%s' for revision '%d' langcode '%s'", $data['created'], $actual->getRevisionCreationTime(), $revision['vid'], $revision['langcode'])); - } - if ($data['changed']) { - $this->assertSame($data['changed'], $actual->getChangedTime(), sprintf("Changed time '%s' does not match actual '%s' for revision '%d' langcode '%s'", $data['changed'], $actual->getChangedTime(), $revision['vid'], $revision['langcode'])); - } + $this->assertSame($data['revision_created'], $actual->getRevisionCreationTime(), sprintf("Revision created time '%s' does not match actual '%s' for revision '%d' langcode '%s'", var_export($data['revision_created'], TRUE), $actual->getRevisionCreationTime(), $revision['vid'], $revision['langcode'])); $this->assertSame($data['log'], $actual->getRevisionLogMessage(), sprintf("Revision log '%s' does not match actual '%s' for revision '%d' langcode '%s'", var_export($data['log'], TRUE), $actual->getRevisionLogMessage(), $revision['vid'], $revision['langcode'])); - // @todo: Complete field migration for entity translation. - // if ($data['field_tree']) { - // $this->assertSame($data['field_tree'], $actual->field_tree->value, sprintf("field_tree value '%s' does not match actual '%s' for revision '%d' langcode '%s'", var_export($data['field_tree'], TRUE), $actual->field_tree->value, $revision['vid'], $revision['langcode'])); - // } + $this->assertSame($data['body'], $actual->body->value, sprintf("Body value '%s' does not match actual '%s' for revision '%d' langcode '%s'", var_export($data['body'], TRUE), $actual->body->value, $revision['vid'], $revision['langcode'])); + if ($data['field_tree']) { + $this->assertSame($data['field_tree'], $actual->field_tree->value, sprintf("field_tree value '%s' does not match actual '%s' for revision '%d' langcode '%s'", var_export($data['field_tree'], TRUE), $actual->field_tree->value, $revision['vid'], $revision['langcode'])); + } } /** @@ -204,7 +193,7 @@ protected function expectedNodeFieldDataTable() { 'sticky' => '0', 'default_langcode' => '0', 'revision_translation_affected' => '1', - 'content_translation_source' => NULL, + 'content_translation_source' => 'en', 'content_translation_outdated' => '0', ], 2 => @@ -215,14 +204,14 @@ protected function expectedNodeFieldDataTable() { 'langcode' => 'mi', 'status' => '1', 'uid' => '1', - 'title' => 'Page tahi', + 'title' => 'Page one', 'created' => '1568261548', - 'changed' => '1568261687', + 'changed' => '1568261548', 'promote' => '0', 'sticky' => '0', 'default_langcode' => '0', 'revision_translation_affected' => NULL, - 'content_translation_source' => NULL, + 'content_translation_source' => 'en', 'content_translation_outdated' => '0', ], 3 => @@ -314,14 +303,14 @@ protected function expectedNodeFieldRevisionTable() { 'langcode' => 'en', 'status' => '1', 'uid' => '1', - 'title' => 'Page one', + 'title' => 'Page tahi', 'created' => '1568261523', - 'changed' => '1568261523', + 'changed' => '1568261548', 'promote' => '0', 'sticky' => '0', 'default_langcode' => '1', - 'revision_translation_affected' => NULL, - 'content_translation_source' => NULL, + 'revision_translation_affected' => '1', + 'content_translation_source' => '', 'content_translation_outdated' => '0', ], 2 => @@ -338,7 +327,7 @@ protected function expectedNodeFieldRevisionTable() { 'sticky' => '0', 'default_langcode' => '0', 'revision_translation_affected' => '1', - 'content_translation_source' => NULL, + 'content_translation_source' => 'en', 'content_translation_outdated' => '0', ], 3 => @@ -355,7 +344,7 @@ protected function expectedNodeFieldRevisionTable() { 'sticky' => '0', 'default_langcode' => '1', 'revision_translation_affected' => '1', - 'content_translation_source' => NULL, + 'content_translation_source' => '', 'content_translation_outdated' => '0', ], 4 => @@ -365,14 +354,14 @@ protected function expectedNodeFieldRevisionTable() { 'langcode' => 'mi', 'status' => '1', 'uid' => '1', - 'title' => 'Page tahi', + 'title' => 'Page one', 'created' => '1568261548', - 'changed' => '1568261687', + 'changed' => '1568261548', 'promote' => '0', 'sticky' => '0', 'default_langcode' => '0', 'revision_translation_affected' => '1', - 'content_translation_source' => NULL, + 'content_translation_source' => 'en', 'content_translation_outdated' => '0', ], 5 => @@ -389,7 +378,7 @@ protected function expectedNodeFieldRevisionTable() { 'sticky' => '0', 'default_langcode' => '1', 'revision_translation_affected' => NULL, - 'content_translation_source' => NULL, + 'content_translation_source' => '', 'content_translation_outdated' => '0', ], 6 => @@ -406,7 +395,7 @@ protected function expectedNodeFieldRevisionTable() { 'sticky' => '0', 'default_langcode' => '0', 'revision_translation_affected' => '1', - 'content_translation_source' => NULL, + 'content_translation_source' => 'en', 'content_translation_outdated' => '0', ], 7 => @@ -416,14 +405,14 @@ protected function expectedNodeFieldRevisionTable() { 'langcode' => 'mi', 'status' => '1', 'uid' => '1', - 'title' => 'Page tahi', + 'title' => 'Page one', 'created' => '1568261548', - 'changed' => '1568261687', + 'changed' => '1568261548', 'promote' => '0', 'sticky' => '0', 'default_langcode' => '0', 'revision_translation_affected' => NULL, - 'content_translation_source' => NULL, + 'content_translation_source' => 'en', 'content_translation_outdated' => '0', ], 8 => @@ -607,151 +596,131 @@ protected function expectedNodeFieldRevisionTable() { */ protected function expectedRevisionEntityData() { return [ - $revision_data = [ - // Node 1, revision 1, en. - 0 => - [ - 'log' => NULL, - 'field_tree' => 'lancewood', - 'created' => '1568261523', - 'changed' => '1568261523', - ], - // Node 1, revision 2, en. - 1 => - [ - 'log' => NULL, - 'field_tree' => 'lancewood', - 'created' => '1568261548', - 'changed' => '1568261523', - ], - // Node 1, revision 2, mi. - 2 => - [ - 'log' => NULL, - 'field_tree' => 'horoeka', - 'created' => '1568261548', - 'changed' => '1568261548', - ], - // Node 1, revision 3, en. - 3 => - [ - 'log' => '2nd', - 'field_tree' => 'lancewood', - 'created' => '1568261687', - 'changed' => '1568261687', - ], - // Node 1, revision 3, mi. - 4 => - [ - 'log' => '2nd', - 'field_tree' => 'horoeka', - 'created' => '1568261687', - 'changed' => '1568261687', - ], - // Node 1, revision 4, en. - 5 => - [ - 'log' => NULL, - 'field_tree' => 'lancewood', - 'created' => '1568261721', - 'changed' => '1568261687', - ], - // Node 1, revision 4, it. - 6 => - [ - 'log' => NULL, - 'field_tree' => 'it - lancewood', - 'created' => '1568261721', - 'changed' => '1568261721', - ], - // Node 1, revision 4, mi. - 7 => - [ - 'log' => NULL, - 'field_tree' => 'horoeka', - 'created' => '1568261721', - 'changed' => '1568261687', - ], - // Node 2, revision 5, en. - 8 => - [ - 'log' => '1st', - 'field_tree' => NULL, - 'created' => '1568702317', - 'changed' => '1568702317', - ], - // Node 2, revision 6, en. - 9 => - [ - 'log' => '2nd', - 'field_tree' => NULL, - 'created' => '1568702345', - 'changed' => '1568702345', - ], - // Node 2, revision 7, en. - 10 => - [ - 'log' => '3rd', - 'field_tree' => NULL, - 'created' => '1568702543', - 'changed' => '1568702345', - ], - // Node 2, revision 7, mi. - 11 => - [ - 'log' => '3rd', - 'field_tree' => NULL, - 'created' => '1568702543', - 'changed' => '1568702543', - ], - // Node 2, revision 8, en. - 12 => - [ - 'log' => '4th', - 'field_tree' => NULL, - 'created' => '1568703243', - 'changed' => '1568702345', - ], - // Node 2, revision 8, it. - 13 => - [ - 'log' => '4th', - 'field_tree' => NULL, - 'created' => '1568703243', - 'changed' => '1568703243', - ], - // Node 2, revision 8, mi. - 14 => - [ - 'log' => '4th', - 'field_tree' => NULL, - 'created' => '1568703243', - 'changed' => '1568702543', - ], - // Node 2, revision 9, en. - 15 => - [ - 'log' => '5th', - 'field_tree' => NULL, - 'created' => '1568703365', - 'changed' => '1568702345', - ], - // Node 2, revision 9, it. - 16 => - [ - 'log' => '5th', - 'field_tree' => NULL, - 'created' => '1568703365', - 'changed' => '1568703243', - ], - // Node 2, revision 9, mi. - 17 => - [ - 'log' => '5th', - 'field_tree' => NULL, - 'created' => '1568703365', - 'changed' => '1568703365', - ], + // Node 1, revision 1, en. + [ + 'log' => NULL, + 'body' => '1st', + 'field_tree' => 'lancewood', + 'revision_created' => '1568261523', + ], + // Node 1, revision 2, en. + [ + 'log' => NULL, + 'body' => '1st', + 'field_tree' => 'lancewood', + 'revision_created' => '1568261548', + ], + // Node 1, revision 2, mi. + [ + 'log' => NULL, + 'body' => '1st', + 'field_tree' => 'horoeka', + 'revision_created' => '1568261548', + ], + // Node 1, revision 3, en. + [ + 'log' => '2nd', + 'body' => '2nd', + 'field_tree' => 'lancewood', + 'revision_created' => '1568261548', + ], + // Node 1, revision 3, mi. + [ + 'log' => '2nd', + 'body' => '2nd', + 'field_tree' => 'horoeka', + 'revision_created' => '1568261548', + ], + // Node 1, revision 4, en. + [ + 'log' => NULL, + 'body' => '2nd', + 'field_tree' => 'lancewood', + 'revision_created' => '1568261548', + ], + // Node 1, revision 4, it. + [ + 'log' => NULL, + 'body' => '2nd', + 'field_tree' => 'it - lancewood', + 'revision_created' => '1568261548', + ], + // Node 1, revision 4, mi. + [ + 'log' => NULL, + 'body' => '2nd', + 'field_tree' => 'horoeka', + 'revision_created' => '1568261548', + ], + // Node 2, revision 5, en. + [ + 'log' => '1st', + 'body' => 'green', + 'field_tree' => NULL, + 'revision_created' => '1568702317', + ], + // Node 2, revision 6, en. + [ + 'log' => '2nd', + 'body' => 'red', + 'field_tree' => NULL, + 'revision_created' => '1568702345', + ], + // Node 2, revision 7, en. + [ + 'log' => '3rd', + 'body' => 'red', + 'field_tree' => NULL, + 'revision_created' => '1568702543', + ], + // Node 2, revision 7, mi. + [ + 'log' => '3rd', + 'body' => 'whero', + 'field_tree' => NULL, + 'revision_created' => '1568702543', + ], + // Node 2, revision 8, en. + [ + 'log' => '4th', + 'body' => 'red', + 'field_tree' => NULL, + 'revision_created' => '1568703243', + ], + // Node 2, revision 8, it. + [ + 'log' => '4th', + 'body' => 'rosso', + 'field_tree' => NULL, + 'revision_created' => '1568703243', + ], + // Node 2, revision 8, mi. + [ + 'log' => '4th', + 'body' => 'whero', + 'field_tree' => NULL, + 'revision_created' => '1568703243', + ], + // Node 2, revision 9, en. + [ + 'log' => '5th', + 'body' => 'red', + 'field_tree' => NULL, + 'revision_created' => '1568703365', + ], + // Node 2, revision 9, it. + [ + 'log' => '5th', + 'body' => 'rosso', + 'field_tree' => NULL, + 'revision_created' => '1568703365', + ], + // Node 2, revision 9, mi. + [ + 'log' => '5th', + 'body' => 'whero me te pango', + 'field_tree' => NULL, + 'revision_created' => '1568703365', ], ]; }