/** * Tests the authenticate method with a correct password and new password hash. * * @covers ::authenticate */ 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(array('name' => $this->username))->will($this->returnValue(array($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)); }