You are here

public function DrushTest::testD7Migrations in Migrate Upgrade 8.3

Tests that all D7 migrations are generated as migrate plus entities.

File

tests/src/Kernel/DrushTest.php, line 90

Class

DrushTest
Tests the drush command runner for migrate upgrade.

Namespace

Drupal\Tests\migrate_upgrade\Kernel

Code

public function testD7Migrations() : void {
  $this
    ->drupal7Migrations();
  $this->sourceDatabase
    ->update('system')
    ->fields([
    'status' => 1,
  ])
    ->condition('name', 'profile')
    ->execute();
  $options = [
    'configure-only' => TRUE,
    'legacy-db-key' => $this->sourceDatabase
      ->getKey(),
  ];
  $this->commands
    ->upgrade($options);
  $migrate_plus_migrations = Migration::loadMultiple();
  $migrations = $this
    ->getMigrations($this->sourceDatabase
    ->getKey(), 7);
  $this
    ->assertMigrations($migrations, $migrate_plus_migrations);
  $optional = array_flip($migrate_plus_migrations['upgrade_d7_url_alias']
    ->toArray()['migration_dependencies']['optional']);
  $node_migrations = array_intersect_key([
    'upgrade_d7_node_translation_page' => TRUE,
    'upgrade_d7_node_complete_page' => TRUE,
  ], $optional);
  $this
    ->assertNotEmpty($node_migrations);
}