X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs-website;a=blobdiff_plain;f=web%2Fcore%2Fmodules%2Fmigrate_drupal_ui%2Ftests%2Fsrc%2FFunctional%2Fd6%2FMigrateUpgrade6NoMultilingualTest.php;fp=web%2Fcore%2Fmodules%2Fmigrate_drupal_ui%2Ftests%2Fsrc%2FFunctional%2Fd6%2FMigrateUpgrade6NoMultilingualTest.php;h=e07e8bf211f7c1547d4a6c4430abee879f5bb558;hp=0000000000000000000000000000000000000000;hb=0bf8d09d2542548982e81a441b1f16e75873a04f;hpb=74df008bdbb3a11eeea356744f39b802369bda3c diff --git a/web/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6NoMultilingualTest.php b/web/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6NoMultilingualTest.php new file mode 100644 index 000000000..e07e8bf21 --- /dev/null +++ b/web/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6NoMultilingualTest.php @@ -0,0 +1,211 @@ +loadFixture(drupal_get_path('module', 'migrate_drupal') . '/tests/fixtures/drupal6.php'); + } + + /** + * {@inheritdoc} + */ + protected function getSourceBasePath() { + return __DIR__ . '/files'; + } + + /** + * {@inheritdoc} + */ + protected function getEntityCounts() { + return [ + 'aggregator_item' => 1, + 'aggregator_feed' => 2, + 'block' => 35, + 'block_content' => 2, + 'block_content_type' => 1, + 'comment' => 6, + // The 'standard' profile provides the 'comment' comment type, and the + // migration creates 12 comment types, one per node type. + 'comment_type' => 13, + 'contact_form' => 5, + 'configurable_language' => 5, + 'editor' => 2, + 'field_config' => 89, + 'field_storage_config' => 63, + 'file' => 8, + 'filter_format' => 7, + 'image_style' => 5, + 'language_content_settings' => 3, + 'migration' => 105, + 'node' => 17, + // The 'book' module provides the 'book' node type, and the migration + // creates 12 node types. + 'node_type' => 13, + 'rdf_mapping' => 7, + 'search_page' => 2, + 'shortcut' => 2, + 'shortcut_set' => 1, + 'action' => 23, + 'menu' => 8, + 'taxonomy_term' => 8, + 'taxonomy_vocabulary' => 7, + 'tour' => 4, + 'user' => 7, + 'user_role' => 6, + 'menu_link_content' => 8, + 'view' => 16, + 'date_format' => 11, + 'entity_form_display' => 29, + 'entity_form_mode' => 1, + 'entity_view_display' => 55, + 'entity_view_mode' => 14, + 'base_field_override' => 38, + ]; + } + + /** + * {@inheritdoc} + */ + protected function getEntityCountsIncremental() { + $counts = $this->getEntityCounts(); + $counts['block_content'] = 3; + $counts['comment'] = 7; + $counts['file'] = 9; + $counts['menu_link_content'] = 9; + $counts['node'] = 18; + $counts['taxonomy_term'] = 9; + $counts['user'] = 8; + $counts['view'] = 16; + return $counts; + } + + /** + * {@inheritdoc} + */ + 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', + 'system', + 'taxonomy', + 'text', + 'upload', + 'user', + 'userreference', + // 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', + 'i18n', + 'i18nstrings', + 'imageapi', + 'number', + 'php', + 'profile', + 'variable_admin', + ]; + } + + /** + * {@inheritdoc} + */ + protected function getMissingPaths() { + return [ + 'i18nblocks', + 'i18ncck', + 'i18ncontent', + 'i18nmenu', + 'i18nprofile', + ]; + } + + /** + * {@inheritdoc} + */ + public function testMigrateUpgradeExecute() { + $connection_options = $this->sourceDatabase->getConnectionOptions(); + $this->drupalGet('/upgrade'); + $session = $this->assertSession(); + $session->responseContains('Upgrade a site by importing its files and the data from its database into a clean and empty new install of Drupal 8.'); + + $button = $session->buttonExists('Continue'); + $button->click(); + $session->pageTextContains('Provide credentials for the database of the Drupal site you want to upgrade.'); + + $driver = $connection_options['driver']; + $connection_options['prefix'] = $connection_options['prefix']['default']; + + // Use the driver connection form to get the correct options out of the + // database settings. This supports all of the databases we test against. + $drivers = drupal_get_database_types(); + $form = $drivers[$driver]->getFormOptions($connection_options); + $connection_options = array_intersect_key($connection_options, $form + $form['advanced_options']); + $version = $this->getLegacyDrupalVersion($this->sourceDatabase); + $edit = [ + $driver => $connection_options, + 'version' => $version, + ]; + if (count($drivers) !== 1) { + $edit['driver'] = $driver; + } + $edits = $this->translatePostValues($edit); + $this->drupalPostForm(NULL, $edits, t('Review upgrade')); + $session->pageTextContains("Install migrate_drupal_multilingual to run migration 'd6_system_maintenance_translation'."); + } + +}