|
Lines 288-294
ok(C4::Auth::checkpw_hash('password', $hash1), 'password validates with first ha
Link Here
|
| 288 |
ok(C4::Auth::checkpw_hash('password', $hash2), 'password validates with second hash'); |
288 |
ok(C4::Auth::checkpw_hash('password', $hash2), 'password validates with second hash'); |
| 289 |
|
289 |
|
| 290 |
subtest 'Check value of login_attempts in checkpw' => sub { |
290 |
subtest 'Check value of login_attempts in checkpw' => sub { |
| 291 |
plan tests => 6; |
291 |
plan tests => 11; |
| 292 |
|
292 |
|
| 293 |
t::lib::Mocks::mock_preference('FailedLoginAttempts', 3); |
293 |
t::lib::Mocks::mock_preference('FailedLoginAttempts', 3); |
| 294 |
|
294 |
|
|
Lines 314-319
subtest 'Check value of login_attempts in checkpw' => sub {
Link Here
|
| 314 |
is( @test, 0, 'checkpw failed again and returns nothing now' ); |
314 |
is( @test, 0, 'checkpw failed again and returns nothing now' ); |
| 315 |
$patron->discard_changes; # refresh |
315 |
$patron->discard_changes; # refresh |
| 316 |
is( $patron->login_attempts, 3, 'Login attempts not increased anymore' ); |
316 |
is( $patron->login_attempts, 3, 'Login attempts not increased anymore' ); |
|
|
317 |
|
| 318 |
# Administrative lockout cannot be undone? |
| 319 |
# Pass the right password now (or: add a nice mock). |
| 320 |
my $auth = Test::MockModule->new( 'C4::Auth' ); |
| 321 |
$auth->mock( 'checkpw_hash', sub { return 1; } ); # not for production :) |
| 322 |
$patron->login_attempts(0)->store; |
| 323 |
@test = checkpw( $dbh, $patron->userid, '123', undef, 'opac', 1 ); |
| 324 |
is( $test[0], 1, 'Build confidence in the mock' ); |
| 325 |
$patron->login_attempts(-1)->store; |
| 326 |
is( $patron->account_locked, 1, 'Check administrative lockout' ); |
| 327 |
@test = checkpw( $dbh, $patron->userid, '123', undef, 'opac', 1 ); |
| 328 |
is( @test, 0, 'checkpw gave red' ); |
| 329 |
$patron->discard_changes; # refresh |
| 330 |
is( $patron->login_attempts, -1, 'Still locked out' ); |
| 331 |
t::lib::Mocks::mock_preference('FailedLoginAttempts', ''); # disable |
| 332 |
is( $patron->account_locked, 1, 'Check administrative lockout without pref' ); |
| 317 |
}; |
333 |
}; |
| 318 |
|
334 |
|
| 319 |
$schema->storage->txn_rollback; |
335 |
$schema->storage->txn_rollback; |
| 320 |
- |
|
|