function MigrationPluginManagerTest::testDependencyBuilding
Same name in other branches
- 9 core/modules/migrate/tests/src/Unit/MigrationPluginManagerTest.php \Drupal\Tests\migrate\Unit\MigrationPluginManagerTest::testDependencyBuilding()
- 8.9.x core/modules/migrate/tests/src/Unit/MigrationPluginManagerTest.php \Drupal\Tests\migrate\Unit\MigrationPluginManagerTest::testDependencyBuilding()
- 11.x core/modules/migrate/tests/src/Unit/MigrationPluginManagerTest.php \Drupal\Tests\migrate\Unit\MigrationPluginManagerTest::testDependencyBuilding()
Tests building dependencies for multiple migrations.
@dataProvider dependencyProvider
File
-
core/
modules/ migrate/ tests/ src/ Unit/ MigrationPluginManagerTest.php, line 43
Class
- MigrationPluginManagerTest
- @coversDefaultClass \Drupal\migrate\Plugin\MigrationPluginManager @group migrate
Namespace
Drupal\Tests\migrate\UnitCode
public function testDependencyBuilding($migrations_data, $result_ids) : void {
$migrations = [];
foreach ($migrations_data as $migration_id => $migration_data) {
$migrations[$migration_id] = new TestMigrationMock($migration_id, $migration_data['migration_dependencies']);
}
$ordered_migrations = $this->pluginManager
->buildDependencyMigration($migrations, []);
// Verify results.
$this->assertEquals($result_ids, array_keys($ordered_migrations));
foreach ($migrations_data as $migration_id => $migration_data) {
$migration = $migrations[$migration_id];
$requirements = $migration_data['result_requirements'];
if (empty($requirements)) {
$this->assertEquals([], $migration->set);
}
else {
$requirements = array_combine($requirements, $requirements);
$this->assertCount(1, $migration->set);
[
$set_prop,
$set_requirements,
] = reset($migration->set);
$this->assertEquals('requirements', $set_prop);
$this->assertEquals($requirements, $set_requirements);
}
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.