X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs-website;a=blobdiff_plain;f=web%2Fcore%2Fmodules%2Flanguage%2Ftests%2Fsrc%2FKernel%2FMigrate%2Fd6%2FMigrateLanguageContentMenuSettingsTest.php;fp=web%2Fcore%2Fmodules%2Flanguage%2Ftests%2Fsrc%2FKernel%2FMigrate%2Fd6%2FMigrateLanguageContentMenuSettingsTest.php;h=0148452dc977428abacb51096875e4835341abdb;hp=0000000000000000000000000000000000000000;hb=0bf8d09d2542548982e81a441b1f16e75873a04f;hpb=74df008bdbb3a11eeea356744f39b802369bda3c diff --git a/web/core/modules/language/tests/src/Kernel/Migrate/d6/MigrateLanguageContentMenuSettingsTest.php b/web/core/modules/language/tests/src/Kernel/Migrate/d6/MigrateLanguageContentMenuSettingsTest.php new file mode 100644 index 000000000..0148452dc --- /dev/null +++ b/web/core/modules/language/tests/src/Kernel/Migrate/d6/MigrateLanguageContentMenuSettingsTest.php @@ -0,0 +1,68 @@ +save(); + ConfigurableLanguage::createFromLangcode('fr')->save(); + $this->executeMigrations(['d6_language_content_menu_settings']); + } + + /** + * Tests migration of menu translation ability. + */ + public function testLanguageMenuContent() { + $config = ContentLanguageSettings::load('menu_link_content.menu_link_content'); + $this->assertInstanceOf(ContentLanguageSettings::class, $config); + $this->assertSame('menu_link_content', $config->getTargetEntityTypeId()); + $this->assertSame('menu_link_content', $config->getTargetBundle()); + $this->assertSame(LanguageInterface::LANGCODE_SITE_DEFAULT, $config->getDefaultLangcode()); + $this->assertTrue($config->isLanguageAlterable()); + + // Test that menus are not alterable when the i18nmenu is not enabled. + $this->sourceDatabase->update('system') + ->fields(['status' => 0]) + ->condition('name', 'i18nmenu') + ->execute(); + + /** @var \Drupal\migrate\Plugin\MigrationInterface $migration */ + $migration = $this->getMigration('d6_language_content_menu_settings'); + // Indicate we're rerunning a migration that's already run. + $migration->getIdMap()->prepareUpdate(); + $this->executeMigration($migration); + + $config = ContentLanguageSettings::load('menu_link_content.menu_link_content'); + $this->assertInstanceOf(ContentLanguageSettings::class, $config); + $this->assertSame('menu_link_content', $config->getTargetEntityTypeId()); + $this->assertSame('menu_link_content', $config->getTargetBundle()); + $this->assertSame(LanguageInterface::LANGCODE_SITE_DEFAULT, $config->getDefaultLangcode()); + $this->assertFalse($config->isLanguageAlterable()); + } + +}