function UserPasswordResetTestCase::testUserPasswordResetExpired in Drupal 7
Attempts login using an expired password reset link.
File
- modules/
user/ user.test, line 751 - Tests for user.module.
Class
- UserPasswordResetTestCase
- Tests resetting a user password.
Code
function testUserPasswordResetExpired() {
// Set password reset timeout variable to 43200 seconds = 12 hours.
$timeout = 43200;
variable_set('user_password_reset_timeout', $timeout);
// Create a user.
$account = $this
->drupalCreateUser();
$this
->drupalLogin($account);
// Load real user object.
$account = user_load($account->uid, TRUE);
$this
->drupalLogout();
// To attempt an expired password reset, create a password reset link as if
// its request time was 60 seconds older than the allowed limit of timeout.
$bogus_timestamp = REQUEST_TIME - variable_get('user_password_reset_timeout', 86400) - 60;
$this
->drupalGet("user/reset/{$account->uid}/{$bogus_timestamp}/" . user_pass_rehash($account->pass, $bogus_timestamp, $account->login, $account->uid));
$this
->assertText(t('You have tried to use a one-time login link that has expired. Please request a new one using the form below.'), 'Expired password reset request rejected.');
}