public function testPasswordReset() { $fake = new User(); $fake->id = 999; $this->assertFalse($fake->resetPassword('xx')); $identity = User::find(['username' => 'cat']); $this->assertEquals(4, $identity->getId()); $this->assertFalse($identity->authenticate(' ')); $dateBefore = date('Y-m-d H:i:s'); $this->assertTrue($identity->resetPassword('Test1234')); $dateAfter = date('Y-m-d H:i:s'); $this->assertTrue($identity->authenticate('Test1234')); $this->assertGreaterThanOrEqual($dateBefore, $identity->getPasswordDate()); $this->assertLessThanOrEqual($dateAfter, $identity->getPasswordDate()); $this->assertGreaterThanOrEqual($dateBefore, $identity->getPasswordDate('Test1234')); $this->assertLessThanOrEqual($dateAfter, $identity->getPasswordDate('Test1234')); $this->assertNull($identity->getPasswordDate('xx')); }