diff --git a/core/modules/datetime/tests/src/Unit/Plugin/migrate/field/DateFieldTest.php b/core/modules/datetime/tests/src/Unit/Plugin/migrate/field/DateFieldTest.php index 1d846f0..794d788 100644 --- a/core/modules/datetime/tests/src/Unit/Plugin/migrate/field/DateFieldTest.php +++ b/core/modules/datetime/tests/src/Unit/Plugin/migrate/field/DateFieldTest.php @@ -30,6 +30,10 @@ public function testUnknownDateType() { $this->setExpectedException(MigrateException::class, "Field field_date of type 'timestamp' is an unknown date field type."); $this->plugin->defineValueProcessPipeline($this->migration, 'field_date', ['type' => 'timestamp']); + + // Retain backwards compatibility testing. + $this->setExpectedException(MigrateException::class, "Field field_date of type 'timestamp' is an unknown date field type."); + $this->plugin->processFieldValues($this->migration, 'field_date', ['type' => 'timestamp']); } } diff --git a/core/modules/datetime/tests/src/Unit/Plugin/migrate/field/d6/DateFieldTest.php b/core/modules/datetime/tests/src/Unit/Plugin/migrate/field/d6/DateFieldTest.php index 4c50ef5..056e0fe 100644 --- a/core/modules/datetime/tests/src/Unit/Plugin/migrate/field/d6/DateFieldTest.php +++ b/core/modules/datetime/tests/src/Unit/Plugin/migrate/field/d6/DateFieldTest.php @@ -31,6 +31,10 @@ public function testUnknownDateType() { $this->setExpectedException(MigrateException::class, "Field field_date of type 'timestamp' is an unknown date field type."); $this->plugin->defineValueProcessPipeline($this->migration, 'field_date', ['type' => 'timestamp']); + + // Retain backwards compatibility testing. + $this->setExpectedException(MigrateException::class, "Field field_date of type 'timestamp' is an unknown date field type."); + $this->plugin->processFieldValues($this->migration, 'field_date', ['type' => 'timestamp']); } } diff --git a/core/modules/file/tests/src/Unit/Plugin/migrate/field/d6/FileFieldTest.php b/core/modules/file/tests/src/Unit/Plugin/migrate/field/d6/FileFieldTest.php index 2e5894e..937cd7d 100644 --- a/core/modules/file/tests/src/Unit/Plugin/migrate/field/d6/FileFieldTest.php +++ b/core/modules/file/tests/src/Unit/Plugin/migrate/field/d6/FileFieldTest.php @@ -44,6 +44,19 @@ protected function setUp() { } /** + * @covers ::processFieldValues + */ + public function testProcessFieldValues() { + $this->plugin->processFieldValues($this->migration, 'somefieldname', []); + + $expected = [ + 'plugin' => 'd6_field_file', + 'source' => 'somefieldname', + ]; + $this->assertSame($expected, $this->migration->getProcess()); + } + + /** * @covers ::defineValueProcessPipeline */ public function testDefineValueProcessPipeline() { diff --git a/core/modules/file/tests/src/Unit/Plugin/migrate/field/d7/FileFieldTest.php b/core/modules/file/tests/src/Unit/Plugin/migrate/field/d7/FileFieldTest.php index de269fe..c0d965f 100644 --- a/core/modules/file/tests/src/Unit/Plugin/migrate/field/d7/FileFieldTest.php +++ b/core/modules/file/tests/src/Unit/Plugin/migrate/field/d7/FileFieldTest.php @@ -44,6 +44,24 @@ protected function setUp() { } /** + * @covers ::processFieldValues + */ + public function testProcessFieldValues() { + $this->plugin->processFieldValues($this->migration, 'somefieldname', []); + + $expected = [ + 'plugin' => 'iterator', + 'source' => 'somefieldname', + 'process' => [ + 'target_id' => 'fid', + 'display' => 'display', + 'description' => 'description', + ], + ]; + $this->assertSame($expected, $this->migration->getProcess()); + } + + /** * @covers ::defineValueProcessPipeline */ public function testDefineValueProcessPipeline() { diff --git a/core/modules/file/tests/src/Unit/Plugin/migrate/field/d7/ImageFieldTest.php b/core/modules/file/tests/src/Unit/Plugin/migrate/field/d7/ImageFieldTest.php index b37df43..af0128b 100644 --- a/core/modules/file/tests/src/Unit/Plugin/migrate/field/d7/ImageFieldTest.php +++ b/core/modules/file/tests/src/Unit/Plugin/migrate/field/d7/ImageFieldTest.php @@ -43,6 +43,26 @@ protected function setUp() { } /** + * @covers ::processFieldValues + */ + public function testProcessFieldValues() { + $this->plugin->processFieldValues($this->migration, 'somefieldname', []); + + $expected = [ + 'plugin' => 'iterator', + 'source' => 'somefieldname', + 'process' => [ + 'target_id' => 'fid', + 'alt' => 'alt', + 'title' => 'title', + 'width' => 'width', + 'height' => 'height', + ], + ]; + $this->assertSame($expected, $this->migration->getProcess()); + } + + /** * @covers ::defineValueProcessPipeline */ public function testDefineValueProcessPipeline() { diff --git a/core/modules/link/tests/src/Kernel/Plugin/migrate/cckfield/d7/LinkCckTest.php b/core/modules/link/tests/src/Kernel/Plugin/migrate/cckfield/d7/LinkCckTest.php index b0c7f0a..a645f42 100644 --- a/core/modules/link/tests/src/Kernel/Plugin/migrate/cckfield/d7/LinkCckTest.php +++ b/core/modules/link/tests/src/Kernel/Plugin/migrate/cckfield/d7/LinkCckTest.php @@ -52,6 +52,25 @@ protected function setUp() { } /** + * @covers ::processCckFieldValues + */ + public function testProcessCckFieldValues() { + $this->plugin->processFieldInstance($this->migration); + + $expected = [ + 'plugin' => 'static_map', + 'source' => 'settings/title', + 'bypass' => TRUE, + 'map' => [ + 'disabled' => DRUPAL_DISABLED, + 'optional' => DRUPAL_OPTIONAL, + 'required' => DRUPAL_REQUIRED, + ], + ]; + $this->assertSame($expected, $this->migration->getProcess()); + } + + /** * @covers ::alterFieldInstanceMigration */ public function testAlterFieldInstanceMigration() { diff --git a/core/modules/link/tests/src/Kernel/Plugin/migrate/field/d7/LinkFieldTest.php b/core/modules/link/tests/src/Kernel/Plugin/migrate/field/d7/LinkFieldTest.php index 280ed45b..10ce553 100644 --- a/core/modules/link/tests/src/Kernel/Plugin/migrate/field/d7/LinkFieldTest.php +++ b/core/modules/link/tests/src/Kernel/Plugin/migrate/field/d7/LinkFieldTest.php @@ -51,6 +51,25 @@ protected function setUp() { } /** + * @covers ::processFieldInstance + */ + public function testProcessFieldInstance() { + $this->plugin->processFieldInstance($this->migration); + + $expected = [ + 'plugin' => 'static_map', + 'source' => 'settings/title', + 'bypass' => TRUE, + 'map' => [ + 'disabled' => DRUPAL_DISABLED, + 'optional' => DRUPAL_OPTIONAL, + 'required' => DRUPAL_REQUIRED, + ], + ]; + $this->assertSame($expected, $this->migration->getProcess()); + } + + /** * @covers ::alterFieldInstanceMigration */ public function testAlterFieldInstanceMigration() { diff --git a/core/modules/link/tests/src/Unit/Plugin/migrate/field/d6/LinkFieldTest.php b/core/modules/link/tests/src/Unit/Plugin/migrate/field/d6/LinkFieldTest.php index 201b652..013062b 100644 --- a/core/modules/link/tests/src/Unit/Plugin/migrate/field/d6/LinkFieldTest.php +++ b/core/modules/link/tests/src/Unit/Plugin/migrate/field/d6/LinkFieldTest.php @@ -44,6 +44,19 @@ protected function setUp() { } /** + * @covers ::processFieldValues + */ + public function testProcessFieldValues() { + $this->plugin->processFieldValues($this->migration, 'somefieldname', []); + + $expected = [ + 'plugin' => 'field_link', + 'source' => 'somefieldname', + ]; + $this->assertSame($expected, $this->migration->getProcess()); + } + + /** * @covers ::defineValueProcessPipeline */ public function testDefineValueProcessPipeline() { diff --git a/core/modules/taxonomy/tests/src/Unit/Plugin/migrate/cckfield/TaxonomyTermReferenceCckTest.php b/core/modules/taxonomy/tests/src/Unit/Plugin/migrate/cckfield/TaxonomyTermReferenceCckTest.php index 8e5147c..059f841 100644 --- a/core/modules/taxonomy/tests/src/Unit/Plugin/migrate/cckfield/TaxonomyTermReferenceCckTest.php +++ b/core/modules/taxonomy/tests/src/Unit/Plugin/migrate/cckfield/TaxonomyTermReferenceCckTest.php @@ -48,6 +48,38 @@ protected function setUp() { * @covers ::processCckFieldValues */ public function testProcessCckFieldValues() { + $this->plugin->processCckFieldValues($this->migration, 'somefieldname', []); + + $expected = [ + 'plugin' => 'iterator', + 'source' => 'somefieldname', + 'process' => [ + 'target_id' => 'tid', + ], + ]; + $this->assertSame($expected, $this->migration->getProcess()); + } + + /** + * @covers ::processFieldValues + */ + public function testProcessFieldValues() { + $this->plugin->processFieldValues($this->migration, 'somefieldname', []); + + $expected = [ + 'plugin' => 'iterator', + 'source' => 'somefieldname', + 'process' => [ + 'target_id' => 'tid', + ], + ]; + $this->assertSame($expected, $this->migration->getProcess()); + } + + /** + * @covers ::defineValueProcessPipeline + */ + public function testDefineValueProcessPipeline() { $this->plugin->defineValueProcessPipeline($this->migration, 'somefieldname', []); $expected = [ diff --git a/core/modules/taxonomy/tests/src/Unit/Plugin/migrate/field/TaxonomyTermReferenceFieldTest.php b/core/modules/taxonomy/tests/src/Unit/Plugin/migrate/field/TaxonomyTermReferenceFieldTest.php index 17aec9b..54266ec 100644 --- a/core/modules/taxonomy/tests/src/Unit/Plugin/migrate/field/TaxonomyTermReferenceFieldTest.php +++ b/core/modules/taxonomy/tests/src/Unit/Plugin/migrate/field/TaxonomyTermReferenceFieldTest.php @@ -44,6 +44,22 @@ protected function setUp() { } /** + * @covers ::processFieldValues + */ + public function testProcessFieldValues() { + $this->plugin->processFieldValues($this->migration, 'somefieldname', []); + + $expected = [ + 'plugin' => 'iterator', + 'source' => 'somefieldname', + 'process' => [ + 'target_id' => 'tid', + ], + ]; + $this->assertSame($expected, $this->migration->getProcess()); + } + + /** * @covers ::defineValueProcessPipeline */ public function testDefineValueProcessPipeline() { diff --git a/core/modules/text/tests/src/Unit/Migrate/d6/TextFieldTest.php b/core/modules/text/tests/src/Unit/Migrate/d6/TextFieldTest.php index 7125df5..ce536b6 100644 --- a/core/modules/text/tests/src/Unit/Migrate/d6/TextFieldTest.php +++ b/core/modules/text/tests/src/Unit/Migrate/d6/TextFieldTest.php @@ -46,13 +46,13 @@ protected function setUp() { } /** - * @covers ::defineValueProcessPipeline + * @covers ::processFieldValues */ public function testProcessFilteredTextFieldValues() { $field_info = [ 'widget_type' => 'text_textfield', ]; - $this->plugin->defineValueProcessPipeline($this->migration, 'body', $field_info); + $this->plugin->processFieldValues($this->migration, 'body', $field_info); $process = $this->migration->getProcess(); $this->assertSame('iterator', $process['plugin']); @@ -71,6 +71,29 @@ public function testProcessFilteredTextFieldValues() { /** * @covers ::defineValueProcessPipeline */ + public function testFilteredTextValueProcessPipeline() { + $field_info = [ + 'widget_type' => 'text_textfield', + ]; + $this->plugin->defineValueProcessPipeline($this->migration, 'body', $field_info); + + $process = $this->migration->getProcess(); + $this->assertSame('iterator', $process['plugin']); + $this->assertSame('body', $process['source']); + $this->assertSame('value', $process['process']['value']); + + // Ensure that filter format IDs will be looked up in the filter format + // migrations. + $lookup = $process['process']['format'][2]; + $this->assertSame('migration', $lookup['plugin']); + $this->assertContains('d6_filter_format', $lookup['migration']); + $this->assertContains('d7_filter_format', $lookup['migration']); + $this->assertSame('format', $lookup['source']); + } + + /** + * @covers ::processFieldValues + */ public function testProcessBooleanTextImplicitValues() { $info = [ 'widget_type' => 'optionwidgets_onoff', @@ -78,7 +101,7 @@ public function testProcessBooleanTextImplicitValues() { 'allowed_values' => "foo\nbar", ] ]; - $this->plugin->defineValueProcessPipeline($this->migration, 'field', $info); + $this->plugin->processFieldValues($this->migration, 'field', $info); $expected = [ 'value' => [ @@ -96,6 +119,31 @@ public function testProcessBooleanTextImplicitValues() { /** * @covers ::defineValueProcessPipeline */ + public function testBooleanTextImplicitValueProcessPipeline() { + $info = [ + 'widget_type' => 'optionwidgets_onoff', + 'global_settings' => [ + 'allowed_values' => "foo\nbar", + ] + ]; + $this->plugin->defineValueProcessPipeline($this->migration, 'field', $info); + + $expected = [ + 'value' => [ + 'plugin' => 'static_map', + 'source' => 'value', + 'default_value' => 0, + 'map' => [ + 'bar' => 1, + ], + ], + ]; + $this->assertSame($expected, $this->migration->getProcess()['process']); + } + + /** + * @covers ::processFieldValues + */ public function testProcessBooleanTextExplicitValues() { $info = [ 'widget_type' => 'optionwidgets_onoff', @@ -103,6 +151,31 @@ public function testProcessBooleanTextExplicitValues() { 'allowed_values' => "foo|Foo\nbaz|Baz", ] ]; + $this->plugin->processFieldValues($this->migration, 'field', $info); + + $expected = [ + 'value' => [ + 'plugin' => 'static_map', + 'source' => 'value', + 'default_value' => 0, + 'map' => [ + 'baz' => 1, + ], + ], + ]; + $this->assertSame($expected, $this->migration->getProcess()['process']); + } + + /** + * @covers ::defineValueProcessPipeline + */ + public function testBooleanTextExplicitValueProcessPipeline() { + $info = [ + 'widget_type' => 'optionwidgets_onoff', + 'global_settings' => [ + 'allowed_values' => "foo|Foo\nbaz|Baz", + ] + ]; $this->plugin->defineValueProcessPipeline($this->migration, 'field', $info); $expected = [ diff --git a/core/modules/text/tests/src/Unit/Plugin/migrate/field/d6/TextFieldTest.php b/core/modules/text/tests/src/Unit/Plugin/migrate/field/d6/TextFieldTest.php index f9315e0..6a7fe4f 100644 --- a/core/modules/text/tests/src/Unit/Plugin/migrate/field/d6/TextFieldTest.php +++ b/core/modules/text/tests/src/Unit/Plugin/migrate/field/d6/TextFieldTest.php @@ -45,13 +45,13 @@ protected function setUp() { } /** - * @covers ::defineValueProcessPipeline + * @covers ::processFieldValues */ public function testProcessFilteredTextFieldValues() { $field_info = [ 'widget_type' => 'text_textfield', ]; - $this->plugin->defineValueProcessPipeline($this->migration, 'body', $field_info); + $this->plugin->processFieldValues($this->migration, 'body', $field_info); $process = $this->migration->getProcess(); $this->assertSame('iterator', $process['plugin']); @@ -70,6 +70,29 @@ public function testProcessFilteredTextFieldValues() { /** * @covers ::defineValueProcessPipeline */ + public function testFilteredTextValueProcessPipeline() { + $field_info = [ + 'widget_type' => 'text_textfield', + ]; + $this->plugin->defineValueProcessPipeline($this->migration, 'body', $field_info); + + $process = $this->migration->getProcess(); + $this->assertSame('iterator', $process['plugin']); + $this->assertSame('body', $process['source']); + $this->assertSame('value', $process['process']['value']); + + // Ensure that filter format IDs will be looked up in the filter format + // migrations. + $lookup = $process['process']['format'][2]; + $this->assertSame('migration', $lookup['plugin']); + $this->assertContains('d6_filter_format', $lookup['migration']); + $this->assertContains('d7_filter_format', $lookup['migration']); + $this->assertSame('format', $lookup['source']); + } + + /** + * @covers ::processFieldValues + */ public function testProcessBooleanTextImplicitValues() { $info = [ 'widget_type' => 'optionwidgets_onoff', @@ -77,7 +100,7 @@ public function testProcessBooleanTextImplicitValues() { 'allowed_values' => "foo\nbar", ] ]; - $this->plugin->defineValueProcessPipeline($this->migration, 'field', $info); + $this->plugin->processFieldValues($this->migration, 'field', $info); $expected = [ 'value' => [ @@ -95,6 +118,31 @@ public function testProcessBooleanTextImplicitValues() { /** * @covers ::defineValueProcessPipeline */ + public function testBooleanTextImplicitValueProcessPipeline() { + $info = [ + 'widget_type' => 'optionwidgets_onoff', + 'global_settings' => [ + 'allowed_values' => "foo\nbar", + ] + ]; + $this->plugin->defineValueProcessPipeline($this->migration, 'field', $info); + + $expected = [ + 'value' => [ + 'plugin' => 'static_map', + 'source' => 'value', + 'default_value' => 0, + 'map' => [ + 'bar' => 1, + ], + ], + ]; + $this->assertSame($expected, $this->migration->getProcess()['process']); + } + + /** + * @covers ::processFieldValues + */ public function testProcessBooleanTextExplicitValues() { $info = [ 'widget_type' => 'optionwidgets_onoff', @@ -102,6 +150,31 @@ public function testProcessBooleanTextExplicitValues() { 'allowed_values' => "foo|Foo\nbaz|Baz", ] ]; + $this->plugin->processFieldValues($this->migration, 'field', $info); + + $expected = [ + 'value' => [ + 'plugin' => 'static_map', + 'source' => 'value', + 'default_value' => 0, + 'map' => [ + 'baz' => 1, + ], + ], + ]; + $this->assertSame($expected, $this->migration->getProcess()['process']); + } + + /** + * @covers ::defineValueProcessPipeline + */ + public function testBooleanTextExplicitValueProcessPipeline() { + $info = [ + 'widget_type' => 'optionwidgets_onoff', + 'global_settings' => [ + 'allowed_values' => "foo|Foo\nbaz|Baz", + ] + ]; $this->plugin->defineValueProcessPipeline($this->migration, 'field', $info); $expected = [