diff --git a/core/modules/config_translation/config_translation.info.yml b/core/modules/config_translation/config_translation.info.yml
index 6b38df266c..7481d75e76 100644
--- a/core/modules/config_translation/config_translation.info.yml
+++ b/core/modules/config_translation/config_translation.info.yml
@@ -11,8 +11,8 @@ migrate:
-
version: 6
status: incomplete
- description: See Details
+ description: See Details
+ description: See Upgrading multilingual Drupal 7 to Drupal 8
diff --git a/core/modules/content_translation/content_translation.info.yml b/core/modules/content_translation/content_translation.info.yml
index 659332248e..d3d773bc71 100644
--- a/core/modules/content_translation/content_translation.info.yml
+++ b/core/modules/content_translation/content_translation.info.yml
@@ -11,8 +11,8 @@ migrate:
-
version: 6
status: incomplete
- description: See Details
+ description: See Details
+ description: See Upgrading multilingual Drupal 7 to Drupal 8
diff --git a/core/modules/migrate_drupal_ui/src/Form/ReviewForm.php b/core/modules/migrate_drupal_ui/src/Form/ReviewForm.php
index f3e3b7a272..e20cecff80 100644
--- a/core/modules/migrate_drupal_ui/src/Form/ReviewForm.php
+++ b/core/modules/migrate_drupal_ui/src/Form/ReviewForm.php
@@ -190,7 +190,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
// Get all the data needed for this form.
$version = $this->store->get('version');
$this->migrations = $this->store->get('migrations');
- // Fetch the system data at the first opportunity.
+ // Fetch the source system data at the first opportunity.
$system_data = $this->store->get('system_data');
// If data is missing or this is the wrong step, start over.
@@ -199,16 +199,14 @@ public function buildForm(array $form, FormStateInterface $form_state) {
return $this->restartUpgradeForm();
}
- // Get migration status for all modules.
+ // Get migration status for all modules on destination site.
$system_info = system_get_info('module');
$destination_system_migrate_info = [];
foreach ($system_info as $module => $info) {
if (isset($info['migrate'])) {
foreach ($info['migrate'] as $migrate_info) {
- if (isset($migrate_info['version'])) {
- if ($migrate_info['version'] == $version) {
- $destination_system_migrate_info[$module] = $migrate_info;
- }
+ if (isset($migrate_info['version']) && ($migrate_info['version'] == $version)) {
+ $destination_system_migrate_info[$module] = $migrate_info;
}
}
}
@@ -217,7 +215,9 @@ public function buildForm(array $form, FormStateInterface $form_state) {
$form = parent::buildForm($form, $form_state);
$form['#title'] = $this->t('What will be upgraded?');
- // Get the source_module and destination_module for each migration.
+ // Build an array of migrations, table_data, keyed by source_module and
+ // destination_module. Only migrations that have both a source_module and
+ // a destination_module definition are added to the array.
$migrations = $this->pluginManager->createInstances(array_keys($this->store->get('migrations')));
$table_data = [];
foreach ($migrations as $migration) {
@@ -236,7 +236,8 @@ public function buildForm(array $form, FormStateInterface $form_state) {
}
}
- // Get the source_module and destination_module from the field plugins.
+ // Add entries for the field plugins to table_data. Use the field plugin id
+ // as both the migration id and the migration label.
$definitions = $this->fieldPluginManager->getDefinitions();
foreach ($definitions as $definition) {
// This is not strict so that we find field plugins with an annotation
@@ -248,22 +249,24 @@ public function buildForm(array $form, FormStateInterface $form_state) {
}
}
- // Add source_module and destination_module for modules that do not need an
- // upgrade path and are enabled on the source site.
+ // Adds entries for modules that do not need an upgrade path and are enabled
+ // on the source site to table_data. In this case use 'core' as the
+ // destination_module and the extension name as both the migration id and
+ // label.
foreach ($this->noUpgradePaths[$version] as $extension) {
if (isset($system_data['module'][$extension]) && $system_data['module'][$extension]['status']) {
$table_data[$extension]['core'][$extension] = $extension;
}
}
- // Add source_module and destination_module for destination modules with
- // status 'n/a' and are enabled on the source site.
+ // Adds entries to table_data for modules with a migrate status of 'n/a' and
+ // are enabled on the source site. In this case use 'core' as the
+ // destination_module and the extension name as both the migration id and
+ // label.
foreach ($destination_system_migrate_info as $extension => $migrate_info) {
- if (isset($migrate_info['status'])) {
- if (strtolower($migrate_info['status']) === 'n/a') {
- if (isset($system_data['module'][$extension]) && $system_data['module'][$extension]['status']) {
- $table_data[$extension]['core'][$extension] = $extension;
- }
+ if (isset($migrate_info['status']) && (strtolower($migrate_info['status']) === 'n/a')) {
+ if (isset($system_data['module'][$extension]) && $system_data['module'][$extension]['status']) {
+ $table_data[$extension]['core'][$extension] = $extension;
}
}
}
@@ -305,7 +308,8 @@ public function buildForm(array $form, FormStateInterface $form_state) {
$missing_count = 0;
ksort($unmigrated_source_modules);
foreach ($unmigrated_source_modules as $source_module => $module_data) {
- // Get the system information for $source_module.
+ // Get the migration status for this information for $source_module.
+ //this is looking at the destination for a module named the same as the source
$destination_description = [];
if (isset($destination_system_migrate_info[$source_module])) {
$output = isset($destination_system_migrate_info[$source_module]['description']) ? $destination_system_migrate_info[$source_module]['description'] : '';
@@ -316,7 +320,7 @@ public function buildForm(array $form, FormStateInterface $form_state) {
}
if ($module_data['status']) {
$missing_count++;
- $missing_module_list['module_list'][$source_module] = [
+ $missing_module_list['module_list'][] = [
'source_module' => [
'#type' => 'html_tag',
'#tag' => 'span',
@@ -354,38 +358,48 @@ public function buildForm(array $form, FormStateInterface $form_state) {
$available_count = 0;
foreach ($table_data as $source_module => $destination_module_info) {
$available_count++;
- $destination_details = [];
- $destination_description = [];
foreach ($destination_module_info as $destination_module => $migration_ids) {
- $destination_details[$destination_module] = [
+ $destination_description = [];
+ $destination_details = [
'#type' => 'item',
'#plain_text' => $destination_module,
];
- }
- // Get the system information for $source_module.
- if (isset($destination_system_migrate_info[$source_module])) {
- $output = isset($destination_system_migrate_info[$source_module]['description']) ? $destination_system_migrate_info[$source_module]['description'] : '';
- $destination_description = [
- '#type' => 'item',
- '#markup' => Xss::filterAdmin($output),
- ];
- }
+ if (isset($destination_system_migrate_info[$destination_module])) {
+ $output = isset($destination_system_migrate_info[$destination_module]['description']) ? $destination_system_migrate_info[$destination_module]['description'] : '';
+ $destination_description = [
+ '#type' => 'item',
+ '#markup' => Xss::filterAdmin($output),
+ ];
+ }
- $available_module_list['module_list'][$source_module] = [
- 'source_module' => [
- '#type' => 'html_tag',
- '#tag' => 'span',
- '#value' => $source_module,
- '#attributes' => [
- 'class' => [
+ if (isset($destination_system_migrate_info[$destination_module]['status']) && $destination_system_migrate_info[$destination_module]['status'] == 'incomplete') {
+ $class =
+ [
+ 'upgrade-analysis-report__status-icon',
+ 'upgrade-analysis-report__status-icon--warning',
+ ];
+ }
+ else {
+ $class =
+ [
'upgrade-analysis-report__status-icon',
'upgrade-analysis-report__status-icon--checked',
- ],
+ ];
+ }
+
+ $available_module_list['module_list'][] = [
+ 'source_module' => [
+ '#type' => 'html_tag',
+ '#tag' => 'span',
+ '#value' => $source_module,
+ '#attributes' => [
+ 'class' => $class
+ ],
],
- ],
- 'destination_module' => $destination_details,
- 'destination_description' => $destination_description,
- ];
+ 'destination_module' => $destination_details,
+ 'destination_description' => $destination_description,
+ ];
+ }
}
$counters = [];
diff --git a/core/modules/migrate_drupal_ui/tests/modules/migration_status_incomplete_test/migration_status_incomplete_test.info.yml b/core/modules/migrate_drupal_ui/tests/modules/migration_status_incomplete_test/migration_status_incomplete_test.info.yml
index 4fc216ec2a..329a4cfd37 100644
--- a/core/modules/migrate_drupal_ui/tests/modules/migration_status_incomplete_test/migration_status_incomplete_test.info.yml
+++ b/core/modules/migrate_drupal_ui/tests/modules/migration_status_incomplete_test/migration_status_incomplete_test.info.yml
@@ -1,6 +1,6 @@
name: 'Migration status incomplete test'
type: module
-description: 'Tests the 'incomplete' migrate status'
+description: "Tests the 'incomplete' migrate status"
package: Testing
version: VERSION
core: 8.x
@@ -8,5 +8,5 @@ migrate:
-
version: 6
status: incomplete
- description: See Migration status test of 'incomplete' status.
+ description: Migration status test of 'incomplete' status.
diff --git a/core/modules/migrate_drupal_ui/tests/modules/migration_status_incomplete_test/migrations/migration_status_incomplete_test.yml b/core/modules/migrate_drupal_ui/tests/modules/migration_status_incomplete_test/migrations/migration_status_incomplete_test.yml
index fa77a0574b..26bd728239 100644
--- a/core/modules/migrate_drupal_ui/tests/modules/migration_status_incomplete_test/migrations/migration_status_incomplete_test.yml
+++ b/core/modules/migrate_drupal_ui/tests/modules/migration_status_incomplete_test/migrations/migration_status_incomplete_test.yml
@@ -1,9 +1,9 @@
-id: incomplete_status_test
-label: Block content body field configuration
-#migration_tags:
-# - Drupal 6
-# - Drupal 7
-# - Configuration
+id: migration_status_incomplete_test
+label: Migration status incomplete test
+migration_tags:
+ - Drupal 6
+ - Drupal 7
+ - Configuration
source:
plugin: embedded_data
data_rows:
@@ -12,8 +12,9 @@ source:
ids:
entity_type:
type: string
- source_module: migration_status_incomplete_test
+ source_module: block
process:
entity_type: entity_type
destination:
- plugin: entity:field_config
\ No newline at end of file
+ plugin: entity:field_config
+ destination_module: migration_status_incomplete_test
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeExecuteTestBase.php b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeExecuteTestBase.php
index fc9529ee40..b246f84af4 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeExecuteTestBase.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeExecuteTestBase.php
@@ -117,10 +117,12 @@ public function testMigrateUpgradeExecute() {
// Ensure there are no errors about any other missing migration providers.
$session->pageTextNotContains(t('module not found'));
- // Test the upgrade paths.
+ // Test the review page.
$available_paths = $this->getAvailablePaths();
+ $available_paths_warning = $this->getAvailablePathsWarning();
$missing_paths = $this->getMissingPaths();
- $this->assertReviewPage($session, $available_paths, $missing_paths);
+ $details = $this->getDetails();
+ $this->assertReviewPage($session, $available_paths, $available_paths_warning, $missing_paths, $details);
$this->drupalPostForm(NULL, [], t('Perform upgrade'));
$this->assertText(t('Congratulations, you upgraded Drupal!'));
@@ -148,7 +150,7 @@ public function testMigrateUpgradeExecute() {
// Need to update available and missing path lists.
$all_available = $this->getAvailablePaths();
- $all_available[] = 'aggregator';
+ $all_available[] = ['aggregator', 1];
$all_missing = $this->getMissingPaths();
$all_missing = array_diff($all_missing, ['aggregator']);
$this->assertReviewPage($session, $all_available, $all_missing);
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeI18nReviewPageTestBase.php b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeI18nReviewPageTestBase.php
index 8a57115edf..f490717fc1 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeI18nReviewPageTestBase.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeI18nReviewPageTestBase.php
@@ -38,8 +38,10 @@ public function testMigrateUpgradeReviewPage() {
// Test the upgrade paths.
$available_paths = $this->getAvailablePaths();
+ $available_paths_warning = $this->getAvailablePathsWarning();
$missing_paths = $this->getMissingPaths();
- $this->assertUpgradePaths($session, $available_paths, $missing_paths);
+ $details = $this->getDetails();
+ $this->assertUpgradePaths($session, $available_paths, $available_paths_warning, $missing_paths, $details);
}
}
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeReviewPageTestBase.php b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeReviewPageTestBase.php
index 54c50d5516..0782877fe0 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeReviewPageTestBase.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeReviewPageTestBase.php
@@ -63,9 +63,10 @@ public function testMigrateUpgradeReviewPage() {
// Test the upgrade paths.
$available_paths = $this->getAvailablePaths();
+ $available_paths_warning = $this->getAvailablePathsWarning();
$missing_paths = $this->getMissingPaths();
- $this->assertUpgradePaths($session, $available_paths, $missing_paths);
- $this->assertDetails($session, $this->getDetails());
+ $details = $this->getDetails();
+ $this->assertUpgradePaths($session, $available_paths, $available_paths_warning, $missing_paths, $details);
// Check there are no errors when a module in noUpgradePaths is not in the
// source system tables. Test with a module that is listed in noUpgradePaths
@@ -83,11 +84,17 @@ public function testMigrateUpgradeReviewPage() {
$this->drupalPostForm(NULL, $this->edits, t('Review upgrade'));
$this->drupalPostForm(NULL, [], t('I acknowledge I may lose data. Continue anyway.'));
- // Test the upgrade paths.
+ // Test the upgrade paths. First remove the module from the available paths
+ // list.
$available_paths = $this->getAvailablePaths();
- $available_paths = array_diff($available_paths, [$module]);
- $missing_paths = $this->getMissingPaths();
- $this->assertUpgradePaths($session, $available_paths, $missing_paths);
+ foreach($available_paths as $key => $value) {
+ if (in_array($module, $value)) {
+ unset($available_paths[$key]);
+ break;
+ }
+ }
+ $available_paths_warning = $this->getAvailablePathsWarning();
+ $this->assertUpgradePaths($session, $available_paths, $available_paths_warning, $missing_paths, $details);
}
/**
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeTestBase.php b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeTestBase.php
index 0cdb904978..404a7d3b78 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeTestBase.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeTestBase.php
@@ -104,39 +104,47 @@ protected function tearDown() {
* The web-assert session.
* @param array $available_paths
* An array of modules that will be upgraded.
+ * @param array $available_paths_warning
+ * An array of modules where the migration path is incomplete.
* @param array $missing_paths
* An array of modules that will not be upgraded.
+ * @param array $details
+ * An array of detail messages displayed on the review page.
*/
- protected function assertUpgradePaths(WebAssert $session, array $available_paths, array $missing_paths) {
+ protected function assertUpgradePaths(WebAssert $session, array $available_paths, array $available_paths_warning, array $missing_paths, array $details) {
// Test the available migration paths.
+ $total_available_paths = 0;
foreach ($available_paths as $available) {
- $session->elementExists('xpath', "//span[contains(@class, 'checked') and text() = '$available']");
- $session->elementNotExists('xpath', "//span[contains(@class, 'error') and text() = '$available']");
+ $session->elementsCount('xpath', "//span[contains(@class, 'checked') and text() = '$available[0]']", $available[1]);
+ $total_available_paths += $available[1];
+ $session->elementNotExists('xpath', "//span[contains(@class, 'error') and text() = '$available[0]']");
+ }
+
+ // Test the available migration paths with a warning status..
+ $total_available_paths_warning = 0;
+ foreach ($available_paths_warning as $available) {
+ $session->elementsCount('xpath', "//span[contains(@class, 'warning') and text() = '$available[0]']", $available[1]);
+ $total_available_paths_warning += $available[1];
+ $session->elementNotExists('xpath', "//span[contains(@class, 'error') and text() = '$available[0]']");
}
// Test the missing migration paths.
foreach ($missing_paths as $missing) {
$session->elementExists('xpath', "//span[contains(@class, 'error') and text() = '$missing']");
$session->elementNotExists('xpath', "//span[contains(@class, 'checked') and text() = '$missing']");
+ $session->elementNotExists('xpath', "//span[contains(@class, 'warning') and text() = '$missing']");
}
- // Test the total count of missing and available paths.
+ // Test the total count of missing, available and warning.
$session->elementsCount('xpath', "//span[contains(@class, 'upgrade-analysis-report__status-icon--error')]", count($missing_paths));
- $session->elementsCount('xpath', "//span[contains(@class, 'upgrade-analysis-report__status-icon--checked')]", count($available_paths));
- }
+ $session->elementsCount('xpath', "//span[contains(@class, 'upgrade-analysis-report__status-icon--checked')]", $total_available_paths);
+ $session->elementsCount('xpath', "//span[contains(@class, 'upgrade-analysis-report__status-icon--warning')]", $total_available_paths_warning);
- /**
- * Tests the displayed upgrade paths.
- *
- * @param \Drupal\Tests\WebAssert $session
- * The web-assert session.
- * @param array $details
- * An array of detail messages displayed on the review page.
- */
- protected function assertDetails(WebAssert $session, array $details = []) {
+ // Tests the displayed details messages.
foreach ($details as $detail) {
- $session->pageTextNotContains($detail);
+ $session->pageTextContains($detail[0]);
}
+
}
/**
@@ -164,6 +172,14 @@ protected function assertDetails(WebAssert $session, array $details = []) {
abstract protected function getAvailablePaths();
/**
+ * Gets the available upgrade paths.
+ *
+ * @return string[]
+ * An array of available upgrade paths.
+ */
+ abstract protected function getAvailablePathsWarning();
+
+ /**
* Gets the missing upgrade paths.
*
* @return string[]
@@ -191,13 +207,17 @@ protected function assertDetails(WebAssert $session, array $details = []) {
* Helper method to assert the text on the 'Upgrade analysis report' page.
*
* @param \Drupal\Tests\WebAssert $session
- * The current session.
- * @param array $all_available
- * Array of modules that will be upgraded.
- * @param array $all_missing
- * Array of modules that will not be upgraded.
+ * The web-assert session.
+ * @param array $available_paths
+ * An array of modules that will be upgraded.
+ * @param array $available_paths_warning
+ * An array of modules where the migration path is incomplete.
+ * @param array $missing_paths
+ * An array of modules that will not be upgraded.
+ * @param array $details
+ * An array of detail messages displayed on the review page.
*/
- protected function assertReviewPage(WebAssert $session, array $all_available, array $all_missing) {
+ protected function assertReviewPage(WebAssert $session, array $available_paths, array $available_paths_warning, array $missing_paths, array $details) {
$this->assertText('What will be upgraded?');
// Ensure there are no errors about the missing modules from the test module.
@@ -207,17 +227,7 @@ protected function assertReviewPage(WebAssert $session, array $all_available, ar
// Ensure there are no errors about any other missing migration providers.
$session->pageTextNotContains(t('module not found'));
- // Test the available migration paths.
- foreach ($all_available as $available) {
- $session->elementExists('xpath', "//span[contains(@class, 'checked') and text() = '$available']");
- $session->elementNotExists('xpath', "//span[contains(@class, 'error') and text() = '$available']");
- }
-
- // Test the missing migration paths.
- foreach ($all_missing as $missing) {
- $session->elementExists('xpath', "//span[contains(@class, 'error') and text() = '$missing']");
- $session->elementNotExists('xpath', "//span[contains(@class, 'checked') and text() = '$missing']");
- }
+ $this->assertUpgradePaths($session, $available_paths, $available_paths_warning, $missing_paths, $details);
}
/**
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6I18nReviewPageTest.php b/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6I18nReviewPageTest.php
index ca7d32e671..5b89bd768e 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6I18nReviewPageTest.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6I18nReviewPageTest.php
@@ -47,88 +47,95 @@ protected function getSourceBasePath() {
*/
protected function getAvailablePaths() {
return [
- 'aggregator',
- 'block',
- 'book',
- 'comment',
- 'contact',
- 'content',
- 'date',
- 'dblog',
- 'email',
- 'filefield',
- 'filter',
- 'forum',
- 'imagecache',
- 'imagefield',
- 'language',
- 'link',
- 'locale',
- 'menu',
- 'node',
- 'nodereference',
- 'optionwidgets',
- 'path',
- 'profile',
- 'search',
- 'statistics',
- 'syslog',
- 'system',
- 'taxonomy',
- 'text',
- 'update',
- 'upload',
- 'user',
- 'userreference',
+ ['aggregator', 1],
+ ['block', 2],
+ ['book', 1],
+ ['comment', 1],
+ ['contact', 1],
+ ['content', 2],
+ ['date', 1],
+ ['dblog', 1],
+ ['email', 1],
+ ['filefield', 1],
+ ['filter', 1],
+ ['forum', 1],
+ ['imagecache', 1],
+ ['imagefield', 1],
+ ['language', 1],
+ ['link', 1],
+ ['locale', 2],
+ ['menu', 3],
+ ['node', 2],
+ ['nodereference', 1],
+ ['optionwidgets', 1],
+ ['path', 1],
+ ['profile', 1],
+ ['search', 1],
+ ['statistics', 1],
+ ['syslog', 1],
+ ['system', 3],
+ ['taxonomy', 2],
+ ['text', 1],
+ ['update', 1],
+ ['upload', 1],
+ ['user', 1],
+ ['userreference', 1],
// Include modules that do not have an upgrade path, defined in the
// $noUpgradePath property in MigrateUpgradeForm.
- 'blog',
- 'blogapi',
- 'calendarsignup',
- 'color',
- 'content_copy',
- 'content_multigroup',
- 'content_permissions',
- 'date_api',
- 'date_locale',
- 'date_php4',
- 'date_popup',
- 'date_repeat',
- 'date_timezone',
- 'date_tools',
- 'datepicker',
- 'ddblock',
- 'event',
- 'fieldgroup',
- 'filefield_meta',
- 'help',
- 'i18n',
- 'i18nstrings',
- 'imageapi',
- 'imageapi_gd',
- 'imageapi_imagemagick',
- 'imagecache_ui',
- 'jquery_ui',
- 'nodeaccess',
- 'number',
- 'openid',
- 'php',
- 'ping',
- 'poll',
- 'throttle',
- 'tracker',
- 'translation',
- 'trigger',
- 'variable',
- 'variable_admin',
- 'views_export',
- 'views_ui',
+ ['blog', 1],
+ ['blogapi', 1],
+ ['calendarsignup', 1],
+ ['color', 1],
+ ['content_copy', 1],
+ ['content_multigroup', 1],
+ ['content_permissions', 1],
+ ['date_api', 1],
+ ['date_locale', 1],
+ ['date_php4', 1],
+ ['date_popup', 1],
+ ['date_repeat', 1],
+ ['date_timezone', 1],
+ ['date_tools', 1],
+ ['datepicker', 1],
+ ['ddblock', 1],
+ ['event', 1],
+ ['fieldgroup', 1],
+ ['filefield_meta', 1],
+ ['help', 1],
+ ['i18n', 1],
+ ['i18nstrings', 1],
+ ['imageapi', 1],
+ ['imageapi_gd', 1],
+ ['imageapi_imagemagick', 1],
+ ['imagecache_ui', 1],
+ ['jquery_ui', 1],
+ ['nodeaccess', 1],
+ ['number', 1],
+ ['openid', 1],
+ ['php', 1],
+ ['ping', 1],
+ ['poll', 1],
+ ['throttle', 1],
+ ['tracker', 1],
+ ['translation', 1],
+ ['trigger', 1],
+ ['variable', 1],
+ ['variable_admin', 1],
+ ['views_export', 1],
+ ['views_ui', 1],
];
}
/**
* {@inheritdoc}
*/
+ protected function getAvailablePathsWarning() {
+ return [];
+ }
+
+ /**
+ * {@inheritdoc}
+ */
protected function getMissingPaths() {
return [
'devel',
@@ -152,7 +159,11 @@ protected function getMissingPaths() {
* {@inheritdoc}
*/
protected function getDetails() {
- return [];
+ return [
+ "Test of 'incomplete' status",
+ 'Known issues when upgrading from Drupal 6 or 7 to Drupal 8',
+ 'Upgrading multilingual Drupal 6 to Drupal 8',
+ ];
}
}
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6NoMultilingualTest.php b/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6NoMultilingualTest.php
index fabbccb151..e0ee6fa9f1 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6NoMultilingualTest.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6NoMultilingualTest.php
@@ -164,6 +164,13 @@ protected function getAvailablePaths() {
/**
* {@inheritdoc}
*/
+ protected function getAvailablePathsWarning() {
+ return [];
+ }
+
+ /**
+ * {@inheritdoc}
+ */
protected function getMissingPaths() {
return [
'i18nblocks',
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6ReviewPageTest.php b/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6ReviewPageTest.php
index 3b201569d1..47b81596ee 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6ReviewPageTest.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6ReviewPageTest.php
@@ -29,6 +29,7 @@ class MigrateUpgrade6ReviewPageTest extends MigrateUpgradeReviewPageTestBase {
'update',
// Required for translation migrations.
'migrate_drupal_multilingual',
+ 'migration_status_incomplete_test',
];
/**
@@ -51,86 +52,98 @@ protected function getSourceBasePath() {
*/
protected function getAvailablePaths() {
return [
- 'aggregator',
- 'block',
- 'book',
- 'comment',
- 'contact',
- 'content',
- 'date',
- 'dblog',
- 'email',
- 'filefield',
- 'filter',
- 'forum',
- 'i18n',
- 'i18nblocks',
- 'i18nmenu',
- 'i18nprofile',
- 'i18nstrings',
- 'i18ntaxonomy',
- 'imagecache',
- 'imagefield',
- 'language',
- 'link',
- 'locale',
- 'menu',
- 'node',
- 'nodereference',
- 'optionwidgets',
- 'path',
- 'profile',
- 'search',
- 'statistics',
- 'syslog',
- 'system',
- 'taxonomy',
- 'text',
- 'update',
- 'upload',
- 'user',
- 'userreference',
- // Include modules that do not have an upgrade path, defined in the
+ ['aggregator', 1],
+ ['block', 2],
+ ['book', 1],
+ ['comment', 1],
+ ['contact', 1],
+ ['content', 2],
+ ['date', 1],
+ ['dblog', 1],
+ ['email', 1],
+ ['filefield', 1],
+ ['filter', 1],
+ ['forum', 1],
+ ['i18n', 1],
+ ['i18nstrings', 1],
+ ['imagecache', 1],
+ ['imagefield', 1],
+ ['language', 1],
+ ['link', 1],
+ ['locale', 3],
+ ['menu', 3],
+ ['node', 2],
+ ['nodereference', 1],
+ ['optionwidgets', 1],
+ ['path', 1],
+ ['profile', 1],
+ ['search', 1],
+ ['statistics', 1],
+ ['syslog', 1],
+ ['system', 3],
+ ['taxonomy', 2],
+ ['text', 1],
+ ['update', 1],
+ ['upload', 1],
+ ['user', 1],
+ ['userreference', 1],
+ // Include modules that do not have an upgrade path,1], defined in the
// $noUpgradePath property in MigrateUpgradeForm.
- 'blog',
- 'blogapi',
- 'calendarsignup',
- 'color',
- 'content_copy',
- 'content_multigroup',
- 'content_permissions',
- 'date_api',
- 'date_locale',
- 'date_php4',
- 'date_popup',
- 'date_repeat',
- 'date_timezone',
- 'date_tools',
- 'datepicker',
- 'ddblock',
- 'event',
- 'fieldgroup',
- 'filefield_meta',
- 'help',
- 'imageapi',
- 'imageapi_gd',
- 'imageapi_imagemagick',
- 'imagecache_ui',
- 'jquery_ui',
- 'nodeaccess',
- 'number',
- 'openid',
- 'php',
- 'ping',
- 'poll',
- 'throttle',
- 'tracker',
- 'translation',
- 'trigger',
- 'variable',
- 'variable_admin',
- 'views_export',
- 'views_ui',
+ ['blog', 1],
+ ['blogapi', 1],
+ ['calendarsignup', 1],
+ ['color', 1],
+ ['content_copy', 1],
+ ['content_multigroup', 1],
+ ['content_permissions', 1],
+ ['date_api', 1],
+ ['date_locale', 1],
+ ['date_php4', 1],
+ ['date_popup', 1],
+ ['date_repeat', 1],
+ ['date_timezone', 1],
+ ['date_tools', 1],
+ ['datepicker', 1],
+ ['ddblock', 1],
+ ['event', 1],
+ ['fieldgroup', 1],
+ ['filefield_meta', 1],
+ ['help', 1],
+ ['imageapi', 1],
+ ['imageapi_gd', 1],
+ ['imageapi_imagemagick', 1],
+ ['imagecache_ui', 1],
+ ['jquery_ui', 1],
+ ['nodeaccess', 1],
+ ['number', 1],
+ ['openid', 1],
+ ['php', 1],
+ ['ping', 1],
+ ['poll', 1],
+ ['throttle', 1],
+ ['tracker', 1],
+ ['translation', 1],
+ ['trigger', 1],
+ ['variable', 1],
+ ['variable_admin', 1],
+ ['views_export', 1],
+ ['views_ui', 1],
+ ];
+ }
+
+ protected function getAvailablePathsWarning() {
+ return [
+ // The block warning is from migration_status_incomplete_test which has
+ // a source_module of block.
+ ['block', 1],
+ ['i18n', 1],
+ ['i18nblocks', 1],
+ ['i18nmenu', 1],
+ ['i18nprofile', 1],
+ ['i18ntaxonomy', 1],
+ ['menu', 1],
+ ['node', 1],
+ ['taxonomy', 1],
];
}
@@ -157,7 +170,9 @@ protected function getMissingPaths() {
*/
protected function getDetails() {
return [
- 'See Views',
+ "Test of 'incomplete' status",
+ 'Known issues when upgrading from Drupal 6 or 7 to Drupal 8',
+ 'Upgrading multilingual Drupal 6 to Drupal 8',
];
}
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6Test.php b/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6Test.php
index 15cdf48cae..4dad796412 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6Test.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6Test.php
@@ -123,54 +123,66 @@ protected function getEntityCountsIncremental() {
*/
protected function getAvailablePaths() {
return [
- 'aggregator',
- 'block',
- 'book',
- 'comment',
- 'contact',
- 'content',
- 'date',
- 'dblog',
- 'email',
- 'filefield',
- 'filter',
- 'forum',
- 'i18n',
- 'i18nblocks',
- 'i18nmenu',
- 'i18nprofile',
- 'i18nstrings',
- 'i18ntaxonomy',
- 'imagecache',
- 'imagefield',
- 'language',
- 'link',
- 'locale',
- 'menu',
- 'node',
- 'nodereference',
- 'optionwidgets',
- 'path',
- 'profile',
- 'search',
- 'statistics',
- 'system',
- 'taxonomy',
- 'text',
- 'upload',
- 'user',
- 'userreference',
+ ['aggregator', 1],
+ ['block', 2],
+ ['book', 1],
+ ['comment', 1],
+ ['contact', 1],
+ ['content', 2],
+ ['date', 1],
+ ['dblog', 1],
+ ['email', 1],
+ ['filefield', 1],
+ ['filter', 1],
+ ['forum', 1],
+ ['i18n', 1],
+ ['i18nstrings', 1],
+ ['imagecache', 1],
+ ['imagefield', 1],
+ ['language', 1],
+ ['link', 1],
+ ['locale', 3],
+ ['menu', 3],
+ ['node', 2],
+ ['nodereference', 1],
+ ['optionwidgets', 1],
+ ['path', 1],
+ ['profile', 1],
+ ['search', 1],
+ ['statistics', 1],
+ ['system', 3],
+ ['taxonomy', 2],
+ ['text', 1],
+ ['upload', 1],
+ ['user', 1],
+ ['userreference', 1],
// Include modules that do not have an upgrade path and are enabled in the
// source database, defined in the $noUpgradePath property
// in MigrateUpgradeForm.
- 'date_api',
- 'date_timezone',
- 'event',
- 'imageapi',
- 'number',
- 'php',
- 'profile',
- 'variable_admin',
+ ['date_api', 1],
+ ['date_timezone', 1],
+ ['event', 1],
+ ['imageapi', 1],
+ ['number', 1],
+ ['php', 1],
+ ['profile', 1],
+ ['variable_admin', 1],
+ ];
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ protected function getAvailablePathsWarning() {
+ return [
+ ['i18n', 1],
+ ['i18nblocks', 1],
+ ['i18nmenu', 1],
+ ['i18nprofile', 1],
+ ['i18ntaxonomy', 1],
+ ['menu', 1],
+ ['node', 1],
+ ['taxonomy', 1],
];
}
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7NoMultilingualTest.php b/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7NoMultilingualTest.php
index a8ed798656..e3a46ea31a 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7NoMultilingualTest.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7NoMultilingualTest.php
@@ -165,6 +165,13 @@ protected function getAvailablePaths() {
/**
* {@inheritdoc}
*/
+ protected function getAvailablePathsWarning() {
+ return [];
+ }
+
+ /**
+ * {@inheritdoc}
+ */
protected function getMissingPaths() {
return [
'rdf',
@@ -176,6 +183,7 @@ protected function getMissingPaths() {
];
}
+
/**
* {@inheritdoc}
*/
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7ReviewPageTest.php b/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7ReviewPageTest.php
index d5a5bff146..6d57166982 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7ReviewPageTest.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7ReviewPageTest.php
@@ -50,85 +50,95 @@ protected function getSourceBasePath() {
*/
protected function getAvailablePaths() {
return [
- 'aggregator',
- 'block',
- 'book',
- 'color',
- 'comment',
- 'contact',
- 'date',
- 'dblog',
- 'email',
- 'field',
- 'field_sql_storage',
- 'file',
- 'filter',
- 'forum',
- 'image',
- 'language',
- 'link',
- 'list',
- 'locale',
- 'menu',
- 'node',
- 'number',
- 'options',
- 'path',
- 'phone',
- 'profile',
- 'search',
- 'shortcut',
- 'statistics',
- 'syslog',
- 'system',
- 'taxonomy',
- 'text',
- 'tracker',
- 'update',
- 'user',
+ ['aggregator', 1],
+ ['block', 2],
+ ['book', 1],
+ ['color', 1],
+ ['comment', 1],
+ ['contact', 1],
+ ['date', 1],
+ ['dblog', 1],
+ ['email', 1],
+ ['field', 1],
+ ['field_sql_storage', 1],
+ ['file', 1],
+ ['filter', 1],
+ ['forum', 1],
+ ['image', 1],
+ ['language', 1],
+ ['link', 1],
+ ['list', 1],
+ ['locale', 2],
+ ['menu', 3],
+ ['node', 2],
+ ['number', 1],
+ ['options', 2],
+ ['path', 1],
+ ['phone', 1],
+ ['profile', 1],
+ ['search', 1],
+ ['shortcut', 1],
+ ['statistics', 1],
+ ['syslog', 1],
+ ['system', 2],
+ ['taxonomy',2],
+ ['text', 1],
+ ['tracker', 1],
+ ['update', 1],
+ ['user', 1],
// Include modules that do not have an upgrade path, defined in the
// $noUpgradePath property in MigrateUpgradeForm.
- 'blog',
- 'bulk_export',
- 'contextual',
- 'ctools',
- 'ctools_access_ruleset',
- 'ctools_ajax_sample',
- 'ctools_custom_content',
- 'dashboard',
- 'date_all_day',
- 'date_api',
- 'date_context',
- 'date_migrate',
- 'date_popup',
- 'date_repeat',
- 'date_repeat_field',
- 'date_tools',
- 'date_views',
- 'entity',
- 'entity_feature',
- 'entity_token',
- 'entityreference',
- 'entity_translation',
- 'field_ui',
- 'help',
- 'openid',
- 'overlay',
- 'page_manager',
- 'php',
- 'poll',
- 'search_embedded_form',
- 'search_extra_type',
- 'search_node_tags',
- 'simpletest',
- 'stylizer',
- 'term_depth',
- 'title',
- 'toolbar',
- 'translation',
- 'trigger',
- 'views_content',
- 'views_ui',
+ ['blog', 1],
+ ['bulk_export', 1],
+ ['contextual', 1],
+ ['ctools', 1],
+ ['ctools_access_ruleset', 1],
+ ['ctools_ajax_sample', 1],
+ ['ctools_custom_content', 1],
+ ['dashboard', 1],
+ ['date_all_day', 1],
+ ['date_api', 1],
+ ['date_context', 1],
+ ['date_migrate', 1],
+ ['date_popup', 1],
+ ['date_repeat', 1],
+ ['date_repeat_field', 1],
+ ['date_tools', 1],
+ ['date_views', 1],
+ ['entity', 1],
+ ['entity_feature', 1],
+ ['entity_token', 1],
+ ['entityreference', 1],
+ ['field_ui', 1],
+ ['help', 1],
+ ['openid', 1],
+ ['overlay', 1],
+ ['page_manager', 1],
+ ['php', 1],
+ ['poll', 1],
+ ['search_embedded_form', 1],
+ ['search_extra_type', 1],
+ ['search_node_tags', 1],
+ ['simpletest', 1],
+ ['stylizer', 1],
+ ['term_depth', 1],
+ ['title', 1],
+ ['toolbar', 1],
+ ['translation', 1],
+ ['trigger', 1],
+ ['views_content', 1],
+ ['views_ui', 1],
+ ];
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ protected function getAvailablePathsWarning() {
+ return [
+ ['entity_translation', 1],
+ ['menu', 1],
+ ['node', 1],
];
}
@@ -146,7 +156,10 @@ protected function getMissingPaths() {
* {@inheritdoc}
*/
protected function getDetails() {
- return [];
+ return [
+ 'Known issues when upgrading from Drupal 6 or 7 to Drupal 8',
+ 'Upgrading multilingual Drupal 7 to Drupal 8', 'warning'
+ ];
}
}
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7Test.php b/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7Test.php
index a5000bbe2d..0f80872706 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7Test.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7Test.php
@@ -120,53 +120,66 @@ protected function getEntityCountsIncremental() {
*/
protected function getAvailablePaths() {
return [
- 'aggregator',
- 'block',
- 'book',
- 'color',
- 'comment',
- 'contact',
- 'date',
- 'dblog',
- 'email',
- 'entityreference',
- 'field',
- 'field_sql_storage',
- 'file',
- 'filter',
- 'forum',
- 'image',
- 'language',
- 'link',
- 'list',
- 'locale',
- 'menu',
- 'node',
- 'number',
- 'options',
- 'path',
- 'phone',
- 'search',
- 'shortcut',
- 'statistics',
- 'system',
- 'taxonomy',
- 'text',
- 'user',
+ ['aggregator', 1],
+ ['block', 2],
+ ['book', 1],
+ ['color', 1],
+ ['comment', 1],
+ ['contact', 1],
+ ['ctools', 1],
+ ['date', 1],
+ ['dblog', 1],
+ ['email', 1],
+ ['entityreference', 1],
+ ['field', 1],
+ ['field_sql_storage', 1],
+ ['file', 1],
+ ['filter', 1],
+ ['forum', 1],
+ ['image', 1],
+ ['language', 1],
+ ['link', 1],
+ ['list', 1],
+ ['locale', 2],
+ ['menu', 3],
+ ['node', 2],
+ ['number', 1],
+ ['options', 2],
+ ['path', 1],
+ ['phone', 1],
+ ['search', 1],
+ ['shortcut', 1],
+ ['statistics', 1],
+ ['system', 2],
+ ['taxonomy', 2],
+ ['text', 1],
+ ['title', 1],
+ ['user', 1],
// Include modules that do not have an upgrade path and are enabled in the
// source database, defined in the $noUpgradePath property
// in MigrateUpgradeForm.
- 'blog',
- 'contextual',
- 'date_api',
- 'entity',
- 'field_ui',
- 'help',
- 'php',
- 'simpletest',
- 'toolbar',
- 'translation',
- 'trigger',
+ ['blog', 1],
+ ['contextual', 1],
+ ['date_api', 1],
+ ['entity', 1],
+ ['field_ui', 1],
+ ['help', 1],
+ ['php', 1],
+ ['simpletest', 1],
+ ['toolbar', 1],
+ ['translation', 1],
+ ['trigger', 1],
+ ];
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ protected function getAvailablePathsWarning() {
+ return [
+ ['entity_translation', 1],
+ ['menu', 1],
+ ['node', 1],
];
}
diff --git a/core/modules/rdf/rdf.info.yml b/core/modules/rdf/rdf.info.yml
index fa935fafe7..b7a8eda30b 100644
--- a/core/modules/rdf/rdf.info.yml
+++ b/core/modules/rdf/rdf.info.yml
@@ -11,4 +11,4 @@ migrate:
-
version: 7
status: incomplete
- description: See Details
+ description: See Known issues when upgrading from Drupal 6 or 7 to Drupal 8
diff --git a/core/modules/views/views.info.yml b/core/modules/views/views.info.yml
index fdd2a038a3..7893237440 100644
--- a/core/modules/views/views.info.yml
+++ b/core/modules/views/views.info.yml
@@ -10,8 +10,8 @@ migrate:
-
version: 6
status: incomplete
- description: See Views
+ description: See Known issues when upgrading from Drupal 6 or 7 to Drupal 8
-
version: 7
status: incomplete
- description: See Views
+ description: See Known issues when upgrading from Drupal 6 or 7 to Drupal 8