diff --git a/core/modules/language/migration_templates/d7_language_negotiation_settings.yml b/core/modules/language/migration_templates/d7_language_negotiation_settings.yml new file mode 100644 index 00000000000..aace5fd51c4 --- /dev/null +++ b/core/modules/language/migration_templates/d7_language_negotiation_settings.yml @@ -0,0 +1,15 @@ +id: d7_language_negotiation_settings +label: Drupal 7 language negotiation settings +migration_tags: + - Drupal 7 +source: + plugin: variable + variables: + - locale_language_negotiation_session_param + - locale_language_negotiation_url_part +process: + 'session/parameter': locale_language_negotiation_session_param + 'url/source': locale_language_negotiation_url_part +destination: + plugin: config + config_name: language.negotiation diff --git a/core/modules/language/src/Tests/Migrate/d7/MigrateLanguageNegotiationSettingsTest.php b/core/modules/language/src/Tests/Migrate/d7/MigrateLanguageNegotiationSettingsTest.php new file mode 100644 index 00000000000..242d818b4e5 --- /dev/null +++ b/core/modules/language/src/Tests/Migrate/d7/MigrateLanguageNegotiationSettingsTest.php @@ -0,0 +1,43 @@ +executeMigration('d7_language_negotiation_settings'); + } + + /** + * Tests migration of language negotiation variables to language.negotiation.yml. + */ + public function testLanguageNegotiation() { + $config = $this->config('language.negotiation'); + $this->assertIdentical($config->get('session.parameter'), 'language'); + $this->assertIdentical($config->get('url.source'), 'domain'); + } + +} diff --git a/core/modules/migrate_drupal/src/Tests/Table/d7/Variable.php b/core/modules/migrate_drupal/src/Tests/Table/d7/Variable.php index 18351afd8ea..177ec928424 100644 --- a/core/modules/migrate_drupal/src/Tests/Table/d7/Variable.php +++ b/core/modules/migrate_drupal/src/Tests/Table/d7/Variable.php @@ -199,6 +199,12 @@ class Variable extends DrupalDumpBase { ))->values(array( 'name' => 'language_types', 'value' => 'a:3:{s:8:"language";b:1;s:16:"language_content";b:0;s:12:"language_url";b:0;}', + ))->values(array( + 'name' => 'locale_language_negotiation_session_param', + 'value' => 's:8:"language";', + ))->values(array( + 'name' => 'locale_language_negotiation_url_part', + 'value' => 's:6:"domain";', ))->values(array( 'name' => 'maintenance_mode', 'value' => 'i:0;', @@ -482,4 +488,4 @@ class Variable extends DrupalDumpBase { } } -#e9148e9bed6f5b345cc1a281afe38dd0 +#6c379107303f95fe9118597506168dc2