Esempio n. 1
0
 /**
  *
  */
 public function testPasswordManagerNeverMigratesPasswordOnFailedVerificationWithVariantEncoders()
 {
     $user_mock = $this->getMockBuilder('ilObjUser')->disableOriginalConstructor()->getMock();
     $encoder = $this->getMockBuilder('ilBasePasswordEncoder')->disableOriginalConstructor()->getMock();
     $factory_mock = $this->getMockBuilder('ilUserPasswordEncoderFactory')->disableOriginalConstructor()->getMock();
     $user_mock->expects($this->once())->method('getPasswordSalt')->will($this->returnValue('asuperrandomsalt'));
     $user_mock->expects($this->once())->method('getPasswordEncodingType')->will($this->returnValue('second_mockencoder'));
     $user_mock->expects($this->once())->method('getPasswd')->will($this->returnValue(self::ENCODED_PASSWORD));
     $user_mock->expects($this->never())->method('resetPassword');
     $encoder->expects($this->once())->method('getName')->will($this->returnValue('second_mockencoder'));
     $encoder->expects($this->once())->method('isPasswordValid')->with($this->equalTo(self::ENCODED_PASSWORD), $this->equalTo(self::PASSWORD), $this->isType('string'))->will($this->returnValue(false));
     $factory_mock->expects($this->once())->method('getEncoderByName')->will($this->returnValue($encoder));
     $password_manager = new ilUserPasswordManager(array('password_encoder' => 'mockencoder', 'encoder_factory' => $factory_mock));
     $this->assertFalse($password_manager->verifyPassword($user_mock, self::PASSWORD));
 }