3 namespace Drupal\Tests\config\Functional;
5 use Drupal\Tests\BrowserTestBase;
6 use Drupal\language\Entity\ConfigurableLanguage;
9 * Tests the listing of configuration entities in a multilingual scenario.
13 class ConfigEntityListMultilingualTest extends BrowserTestBase {
20 public static $modules = ['config_test', 'language', 'block'];
25 protected function setUp() {
27 // Delete the override config_test entity. It is not required by this test.
28 \Drupal::entityManager()->getStorage('config_test')->load('override')->delete();
29 ConfigurableLanguage::createFromLangcode('hu')->save();
31 $this->drupalPlaceBlock('local_actions_block');
35 * Tests the listing UI with different language scenarios.
37 public function testListUI() {
38 // Log in as an administrative user to access the full menu trail.
39 $this->drupalLogin($this->drupalCreateUser(['access administration pages', 'administer site configuration']));
42 $this->drupalGet('admin/structure/config_test');
43 $this->assertLinkByHref('admin/structure/config_test/manage/dotted.default');
45 // Add a new entity using the action link.
46 $this->clickLink('Add test configuration');
52 $this->drupalPostForm(NULL, $edit, t('Save'));
53 // Ensure that operations for editing the Hungarian entity appear in English.
54 $this->assertLinkByHref('admin/structure/config_test/manage/antilop');
56 // Get the list page in Hungarian and assert Hungarian admin links
57 // regardless of language of config entities.
58 $this->drupalGet('hu/admin/structure/config_test');
59 $this->assertLinkByHref('hu/admin/structure/config_test/manage/dotted.default');
60 $this->assertLinkByHref('hu/admin/structure/config_test/manage/antilop');