Chris@0: langcodes = [ConfigurableLanguage::load('en')]; Chris@0: for ($i = 1; $i < 3; ++$i) { Chris@0: $language = ConfigurableLanguage::create([ Chris@0: 'id' => 'l' . $i, Chris@0: 'label' => $this->randomString(), Chris@0: ]); Chris@0: $language->save(); Chris@0: $this->langcodes[$i] = $language; Chris@0: } Chris@0: } Chris@0: Chris@0: /** Chris@0: * Creates a block in a language, check blocks page in all languages. Chris@0: */ Chris@0: public function testBlockLinks() { Chris@0: // Create admin user to be able to access block admin. Chris@0: $admin_user = $this->drupalCreateUser([ Chris@0: 'administer blocks', Chris@0: 'access administration pages', Chris@0: 'administer menu', Chris@0: ]); Chris@0: $this->drupalLogin($admin_user); Chris@0: Chris@0: // Create the block cache for all languages. Chris@0: foreach ($this->langcodes as $langcode) { Chris@0: $this->drupalGet('admin/structure/block', ['language' => $langcode]); Chris@0: $this->clickLink('Place block'); Chris@0: } Chris@0: Chris@0: // Create a menu in the default language. Chris@0: $edit['label'] = $this->randomMachineName(); Chris@17: $edit['id'] = mb_strtolower($edit['label']); Chris@0: $this->drupalPostForm('admin/structure/menu/add', $edit, t('Save')); Chris@0: $this->assertText(t('Menu @label has been added.', ['@label' => $edit['label']])); Chris@0: Chris@0: // Check that the block is listed for all languages. Chris@0: foreach ($this->langcodes as $langcode) { Chris@0: $this->drupalGet('admin/structure/block', ['language' => $langcode]); Chris@0: $this->clickLink('Place block'); Chris@0: $this->assertText($edit['label']); Chris@0: } Chris@0: } Chris@0: Chris@0: }