function UserAuthTest::testAuthenticateWithCorrectPasswordAndNewPasswordHash

Same name and namespace in other branches
  1. 9 core/modules/user/tests/src/Unit/UserAuthTest.php \Drupal\Tests\user\Unit\UserAuthTest::testAuthenticateWithCorrectPasswordAndNewPasswordHash()
  2. 10 core/modules/user/tests/src/Unit/UserAuthTest.php \Drupal\Tests\user\Unit\UserAuthTest::testAuthenticateWithCorrectPasswordAndNewPasswordHash()
  3. 11.x core/modules/user/tests/src/Unit/UserAuthTest.php \Drupal\Tests\user\Unit\UserAuthTest::testAuthenticateWithCorrectPasswordAndNewPasswordHash()

Tests the authenticate method with a correct password and new password hash.

@covers ::authenticate

File

core/modules/user/tests/src/Unit/UserAuthTest.php, line 196

Class

UserAuthTest
@coversDefaultClass <a href="/api/drupal/core%21modules%21user%21src%21UserAuth.php/class/UserAuth/8.9.x" title="Validates user authentication credentials." class="local">\Drupal\user\UserAuth</a> @group user

Namespace

Drupal\Tests\user\Unit

Code

public function testAuthenticateWithCorrectPasswordAndNewPasswordHash() {
    $this->testUser
        ->expects($this->once())
        ->method('id')
        ->will($this->returnValue(1));
    $this->testUser
        ->expects($this->once())
        ->method('setPassword')
        ->with($this->password);
    $this->testUser
        ->expects($this->once())
        ->method('save');
    $this->userStorage
        ->expects($this->once())
        ->method('loadByProperties')
        ->with([
        'name' => $this->username,
    ])
        ->will($this->returnValue([
        $this->testUser,
    ]));
    $this->passwordService
        ->expects($this->once())
        ->method('check')
        ->with($this->password, $this->testUser
        ->getPassword())
        ->will($this->returnValue(TRUE));
    $this->passwordService
        ->expects($this->once())
        ->method('needsRehash')
        ->with($this->testUser
        ->getPassword())
        ->will($this->returnValue(TRUE));
    $this->assertsame(1, $this->userAuth
        ->authenticate($this->username, $this->password));
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.