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

Issue #3462561 by catch, smustgrave: Stop using a data provider in UserPasswordResetTest

parent 0fd4bdcb
No related branches found
No related tags found
19 merge requests!11131[10.4.x-only-DO-NOT-MERGE]: Issue ##2842525 Ajax attached to Views exposed filter form does not trigger callbacks,!9470[10.3.x-only-DO-NOT-MERGE]: #3331771 Fix file_get_contents(): Passing null to parameter,!8736Update the Documention As per the Function uses.,!8513Issue #3453786: DefaultSelection should document why values for target_bundles NULL and [] behave as they do,!3878Removed unused condition head title for views,!3818Issue #2140179: $entity->original gets stale between updates,!3742Issue #3328429: Create item list field formatter for displaying ordered and unordered lists,!3731Claro: role=button on status report items,!3154Fixes #2987987 - CSRF token validation broken on routes with optional parameters.,!3133core/modules/system/css/components/hidden.module.css,!2812Issue #3312049: [Followup] Fix Drupal.Commenting.FunctionComment.MissingReturnType returns for NULL,!2378Issue #2875033: Optimize joins and table selection in SQL entity query implementation,!2062Issue #3246454: Add weekly granularity to views date sort,!10223132456: Fix issue where views instances are emptied before an ajax request is complete,!877Issue #2708101: Default value for link text is not saved,!617Issue #3043725: Provide a Entity Handler for user cancelation,!579Issue #2230909: Simple decimals fail to pass validation,!560Move callback classRemove outside of the loop,!555Issue #3202493
Pipeline #238088 canceled
Pipeline: drupal

#238091

    ......@@ -240,10 +240,8 @@ public function testUserPasswordReset(): void {
    /**
    * Tests password reset functionality when user has set preferred language.
    *
    * @dataProvider languagePrefixTestProvider
    */
    public function testUserPasswordResetPreferredLanguage($setPreferredLangcode, $activeLangcode, $prefix, $visitingUrl, $expectedResetUrl, $unexpectedResetUrl): void {
    public function testUserPasswordResetPreferredLanguage(): void {
    // Set two new languages.
    ConfigurableLanguage::createFromLangcode('fr')->save();
    ConfigurableLanguage::createFromLangcode('zh-hant')->save();
    ......@@ -255,34 +253,37 @@ public function testUserPasswordResetPreferredLanguage($setPreferredLangcode, $a
    $config->set('url.prefixes', ['en' => '', 'fr' => 'fr', 'zh-hant' => 'zh'])->save();
    $this->rebuildContainer();
    $this->account->preferred_langcode = $setPreferredLangcode;
    $this->account->save();
    $this->assertSame($setPreferredLangcode, $this->account->getPreferredLangcode(FALSE));
    foreach ($this->languagePrefixTestProvider() as $scenario) {
    [$setPreferredLangcode, $activeLangcode, $prefix, $visitingUrl, $expectedResetUrl, $unexpectedResetUrl] = array_values($scenario);
    $this->account->preferred_langcode = $setPreferredLangcode;
    $this->account->save();
    $this->assertSame($setPreferredLangcode, $this->account->getPreferredLangcode(FALSE));
    // Test Default langcode is different from active langcode when visiting different.
    if ($setPreferredLangcode !== 'en') {
    $this->drupalGet($prefix . '/user/password');
    $this->assertSame($activeLangcode, $this->getSession()->getResponseHeader('Content-language'));
    $this->assertSame('en', $this->languageManager->getDefaultLanguage()->getId());
    }
    // Test password reset with language prefixes.
    $this->drupalGet($visitingUrl);
    $edit = ['name' => $this->account->getAccountName()];
    $this->submitForm($edit, 'Submit');
    $this->assertValidPasswordReset($edit['name']);
    // Test Default langcode is different from active langcode when visiting different.
    if ($setPreferredLangcode !== 'en') {
    $this->drupalGet($prefix . '/user/password');
    $this->assertSame($activeLangcode, $this->getSession()->getResponseHeader('Content-language'));
    $this->assertSame('en', $this->languageManager->getDefaultLanguage()->getId());
    $resetURL = $this->getResetURL();
    $this->assertStringContainsString($expectedResetUrl, $resetURL);
    $this->assertStringNotContainsString($unexpectedResetUrl, $resetURL);
    }
    // Test password reset with language prefixes.
    $this->drupalGet($visitingUrl);
    $edit = ['name' => $this->account->getAccountName()];
    $this->submitForm($edit, 'Submit');
    $this->assertValidPasswordReset($edit['name']);
    $resetURL = $this->getResetURL();
    $this->assertStringContainsString($expectedResetUrl, $resetURL);
    $this->assertStringNotContainsString($unexpectedResetUrl, $resetURL);
    }
    /**
    * Data provider for testUserPasswordResetPreferredLanguage().
    * Provides scenarios for testUserPasswordResetPreferredLanguage().
    *
    * @return array
    */
    public static function languagePrefixTestProvider() {
    protected function languagePrefixTestProvider() {
    return [
    'Test language prefix set as \'\', visiting default with preferred language as en' => [
    'setPreferredLangcode' => 'en',
    ......
    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