Skip to content
Snippets Groups Projects
Verified Commit 1fd180cf authored by Théodore Biadala's avatar Théodore Biadala
Browse files

Issue #3385838 by pooja_sharma, longwave, joachim, smustgrave:...

Issue #3385838 by pooja_sharma, longwave, joachim, smustgrave: PathLanguageTest should use API to set up language

(cherry picked from commit be281b5f)
parent 092cf97b
No related branches found
No related tags found
3 merge requests!11769Issue #3517987: Add option to contextual filters to encode slashes in query parameter.,!11185Issue #3477324 by andypost, alexpott: Fix usage of str_getcsv() and fgetcsv() for PHP 8.4,!9944Issue #3483353: Consider making the createCopy config action optionally fail...
Pipeline #265872 passed with warnings
Pipeline: drupal

#265877

    ......@@ -4,6 +4,10 @@
    namespace Drupal\Tests\path\Functional;
    use Drupal\Core\Language\LanguageInterface;
    use Drupal\language\Plugin\LanguageNegotiation\LanguageNegotiationUrl;
    use Drupal\user\Entity\User;
    use Drupal\user\Plugin\LanguageNegotiation\LanguageNegotiationUser;
    use Drupal\Tests\content_translation\Traits\ContentTranslationTestTrait;
    /**
    ......@@ -65,9 +69,7 @@ protected function setUp(): void {
    static::createLanguageFromLangcode('fr');
    // 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');
    $this->container->get('language_negotiator')->saveConfiguration(LanguageInterface::TYPE_URL, [LanguageNegotiationUrl::METHOD_ID => 1]);
    // Enable translation for page node.
    static::enableContentTranslation('node', 'page');
    ......@@ -135,19 +137,13 @@ public function testAliasTranslation(): void {
    // Confirm that the alias works even when changing language negotiation
    // options. Enable User language detection and selection over URL one.
    $edit = [
    'language_interface[enabled][language-user]' => 1,
    'language_interface[weight][language-user]' => -9,
    'language_interface[enabled][language-url]' => 1,
    'language_interface[weight][language-url]' => -8,
    ];
    $this->drupalGet('admin/config/regional/language/detection');
    $this->submitForm($edit, 'Save settings');
    $this->container->get('language_negotiator')->saveConfiguration(LanguageInterface::TYPE_INTERFACE, [LanguageNegotiationUser::METHOD_ID => 1]);
    $this->container->get('language_negotiator')->saveConfiguration(LanguageInterface::TYPE_URL, [LanguageNegotiationUrl::METHOD_ID => 1]);
    // Change user language preference.
    $edit = ['preferred_langcode' => 'fr'];
    $this->drupalGet("user/" . $this->webUser->id() . "/edit");
    $this->submitForm($edit, 'Save');
    $user = User::load($this->webUser->id());
    $user->set('preferred_langcode', 'fr');
    $user->save();
    // Check that the English alias works. In this situation French is the
    // current UI and content language, while URL language is English (since we
    ......@@ -165,9 +161,7 @@ public function testAliasTranslation(): void {
    $this->assertSession()->pageTextContains($english_node_french_translation->body->value);
    // Disable URL language negotiation.
    $edit = ['language_interface[enabled][language-url]' => FALSE];
    $this->drupalGet('admin/config/regional/language/detection');
    $this->submitForm($edit, 'Save settings');
    $this->container->get('language_negotiator')->saveConfiguration(LanguageInterface::TYPE_URL, [LanguageNegotiationUrl::METHOD_ID => FALSE]);
    // Check that the English alias still works.
    $this->drupalGet($english_alias);
    ......
    0% Loading or .
    You are about to add 0 people to the discussion. Proceed with caution.
    Finish editing this message first!
    Please register or to comment