function LanguageSwitchingTest::testLanguageBlock
Same name in other branches
- 9 core/modules/language/tests/src/Functional/LanguageSwitchingTest.php \Drupal\Tests\language\Functional\LanguageSwitchingTest::testLanguageBlock()
- 8.9.x core/modules/language/tests/src/Functional/LanguageSwitchingTest.php \Drupal\Tests\language\Functional\LanguageSwitchingTest::testLanguageBlock()
- 11.x core/modules/language/tests/src/Functional/LanguageSwitchingTest.php \Drupal\Tests\language\Functional\LanguageSwitchingTest::testLanguageBlock()
Functional tests for the language switcher block.
File
-
core/
modules/ language/ tests/ src/ Functional/ LanguageSwitchingTest.php, line 63
Class
- LanguageSwitchingTest
- Functional tests for the language switching feature.
Namespace
Drupal\Tests\language\FunctionalCode
public function testLanguageBlock() : void {
// Add language.
$edit = [
'predefined_langcode' => 'fr',
];
$this->drupalGet('admin/config/regional/language/add');
$this->submitForm($edit, 'Add language');
// Set the native language name.
$this->saveNativeLanguageName('fr', 'français');
// Enable URL language detection and selection.
$edit = [
'language_interface[enabled][language-url]' => '1',
];
$this->drupalGet('admin/config/regional/language/detection');
$this->submitForm($edit, 'Save settings');
// Enable the language switching block.
$block = $this->drupalPlaceBlock('language_block:' . LanguageInterface::TYPE_INTERFACE, [
'id' => 'test_language_block',
// Ensure a 2-byte UTF-8 sequence is in the tested output.
'label' => $this->randomMachineName(8) . '×',
]);
$this->doTestLanguageBlockAuthenticated($block->label());
$this->doTestHomePageLinks($block->label());
$this->doTestLanguageBlockAnonymous($block->label());
$this->doTestLanguageBlock404($block->label(), 'system/404');
// Test 404s with big_pipe where the behavior is different for logged-in
// users.
\Drupal::service('module_installer')->install([
'big_pipe',
]);
$this->rebuildAll();
$this->doTestLanguageBlock404($block->label(), 'system/404');
$this->drupalLogin($this->drupalCreateUser());
// @todo This is testing the current behavior with the big_pipe module
// enabled. This behavior is a bug will be fixed in
// https://www.drupal.org/project/drupal/issues/3349201.
$this->doTestLanguageBlock404($block->label(), '<front>');
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.