Mercurial > hg > isophonics-drupal-site
diff core/modules/migrate/tests/src/Kernel/MigrationTest.php @ 0:4c8ae668cc8c
Initial import (non-working)
author | Chris Cannam |
---|---|
date | Wed, 29 Nov 2017 16:09:58 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/core/modules/migrate/tests/src/Kernel/MigrationTest.php Wed Nov 29 16:09:58 2017 +0000 @@ -0,0 +1,45 @@ +<?php + +namespace Drupal\Tests\migrate\Kernel; + +use Drupal\KernelTests\KernelTestBase; + +/** + * Tests the migration plugin. + * + * @group migrate + * + * @coversDefaultClass \Drupal\migrate\Plugin\Migration + */ +class MigrationTest extends KernelTestBase { + + /** + * Enable field because we are using one of its source plugins. + * + * @var array + */ + public static $modules = ['migrate', 'field']; + + /** + * Tests Migration::set(). + * + * @covers ::set + */ + public function testSetInvalidation() { + $migration = \Drupal::service('plugin.manager.migration')->createStubMigration([ + 'source' => ['plugin' => 'empty'], + 'destination' => ['plugin' => 'entity:entity_view_mode'], + ]); + $this->assertEqual('empty', $migration->getSourcePlugin()->getPluginId()); + $this->assertEqual('entity:entity_view_mode', $migration->getDestinationPlugin()->getPluginId()); + + // Test the source plugin is invalidated. + $migration->set('source', ['plugin' => 'embedded_data', 'data_rows' => [], 'ids' => []]); + $this->assertEqual('embedded_data', $migration->getSourcePlugin()->getPluginId()); + + // Test the destination plugin is invalidated. + $migration->set('destination', ['plugin' => 'null']); + $this->assertEqual('null', $migration->getDestinationPlugin()->getPluginId()); + } + +}