Пример #1
0
 /**
  * Function to check if the temp Password functionality is working correctly.
  */
 public function testTempPassword()
 {
     $currentTime = time("SYS");
     AdvancedPasswordManagement::$tempPassExpiryTime = 900;
     $temp_pass = AdvancedPasswordManagement::tempPassword($this->user->getUserID());
     //this will create a new temp password.
     //firstTest
     time("SET", $currentTime + 500);
     //set future time that has not passed.
     $this->assertFalse(AdvancedPasswordManagement::tempPassword($this->user->getUserID(), "qwert"));
     //This should return false since the password is wrong. Even though time has not expired.
     //secondTest
     time("SET", $currentTime + 500);
     $this->assertTrue(AdvancedPasswordManagement::tempPassword($this->user->getUserID(), $temp_pass));
     //This should return true since the password is correct and time has not expired.
     //thirdTest
     time("SET", $currentTime + 500);
     $this->assertFalse(AdvancedPasswordManagement::tempPassword($this->user->getUserID(), $temp_pass));
     //This should return false since the above temp_pass has already been used once, so its expired.
     $temp_pass = AdvancedPasswordManagement::tempPassword($this->user->getUserID());
     //this will create a new temp password.
     //fourthTest
     time("SET", time() + 1000);
     $this->assertFalse(AdvancedPasswordManagement::tempPassword($this->user->getUserID(), $temp_pass));
     //This should return false since the time has expired.
 }