3 namespace Drupal\Tests\menu_link_content\Kernel\Migrate\d6;
5 use Drupal\menu_link_content\Entity\MenuLinkContent;
6 use Drupal\Tests\migrate_drupal\Kernel\d6\MigrateDrupal6TestBase;
11 * @group migrate_drupal_6
13 class MigrateMenuLinkTranslationTest extends MigrateDrupal6TestBase {
18 public static $modules = [
22 'content_translation',
23 // Required for translation migrations.
24 'migrate_drupal_multilingual',
30 protected function setUp() {
32 $this->migrateContent();
33 $this->installSchema('system', ['router']);
34 $this->installEntitySchema('menu_link_content');
35 $this->executeMigrations([
39 'd6_menu_links_translation',
44 * Tests migration of menu links.
46 public function testMenuLinks() {
47 /** @var \Drupal\menu_link_content\Entity\MenuLinkContent $menu_link */
48 $menu_link = MenuLinkContent::load(139)->getTranslation('fr');
49 $this->assertInstanceOf(MenuLinkContent::class, $menu_link);
50 $this->assertSame('fr - Test 2', $menu_link->getTitle());
51 $this->assertSame('fr - Test menu link 2', $menu_link->getDescription());
52 $this->assertSame('secondary-links', $menu_link->getMenuName());
53 $this->assertTrue($menu_link->isEnabled());
54 $this->assertTrue($menu_link->isExpanded());
55 $this->assertSame(['query' => 'foo=bar', 'attributes' => ['title' => 'Test menu link 2']], $menu_link->link->options);
56 $this->assertSame('internal:/admin', $menu_link->link->uri);
57 $this->assertSame(-49, $menu_link->getWeight());
59 $menu_link = MenuLinkContent::load(139)->getTranslation('zu');
60 $this->assertInstanceOf(MenuLinkContent::class, $menu_link);
61 $this->assertSame('Test 2', $menu_link->getTitle());
62 $this->assertSame('zu - Test menu link 2', $menu_link->getDescription());
63 $this->assertSame('secondary-links', $menu_link->getMenuName());
64 $this->assertTrue($menu_link->isEnabled());
65 $this->assertTrue($menu_link->isExpanded());
66 $this->assertSame(['query' => 'foo=bar', 'attributes' => ['title' => 'Test menu link 2']], $menu_link->link->options);
67 $this->assertSame('internal:/admin', $menu_link->link->uri);
68 $this->assertSame(-49, $menu_link->getWeight());
70 $menu_link = MenuLinkContent::load(140)->getTranslation('fr');
71 $this->assertInstanceOf(MenuLinkContent::class, $menu_link);
72 $this->assertSame('fr - Drupal.org', $menu_link->getTitle());
73 $this->assertSame('', $menu_link->getDescription());
74 $this->assertSame('secondary-links', $menu_link->getMenuName());
75 $this->assertTrue($menu_link->isEnabled());
76 $this->assertFalse($menu_link->isExpanded());
77 $this->assertSame(['attributes' => ['title' => '']], $menu_link->link->options);
78 $this->assertSame('https://www.drupal.org', $menu_link->link->uri);
79 $this->assertSame(-50, $menu_link->getWeight());
81 $menu_link = MenuLinkContent::load(463);
82 $this->assertInstanceOf(MenuLinkContent::class, $menu_link);
83 $this->assertSame('fr - Test 1', $menu_link->getTitle());
84 $this->assertSame('fr - Test menu link 1', $menu_link->getDescription());
85 $this->assertSame('secondary-links', $menu_link->getMenuName());
86 $this->assertTrue($menu_link->isEnabled());
87 $this->assertFalse($menu_link->isExpanded());
90 'title' => 'fr - Test menu link 1',
95 $this->assertSame($attributes, $menu_link->link->options);
96 $this->assertSame('internal:/user/login', $menu_link->link->uri);
97 $this->assertSame(-49, $menu_link->getWeight());