1
0
forked from baron/baron-sso

로그인 챌린지 루프 방지 가드 추가

This commit is contained in:
2026-03-03 14:11:19 +09:00
parent b2dae93ac1
commit 7c1dbaf206
6 changed files with 169 additions and 2 deletions

View File

@@ -0,0 +1,33 @@
import 'package:flutter_test/flutter_test.dart';
import 'package:userfront/core/services/login_challenge_loop_guard.dart';
void main() {
group('login_challenge_loop_guard', () {
test('mark 이후 cooldown 내 재시도는 차단되고 clear 후 허용된다', () {
const challenge = 'loop-guard-test-challenge';
loginChallengeLoopGuard.clear(challenge);
expect(
loginChallengeLoopGuard.shouldAllowAutoAccept(challenge),
isTrue,
);
loginChallengeLoopGuard.markAutoAcceptAttempt(challenge);
expect(
loginChallengeLoopGuard.shouldAllowAutoAccept(
challenge,
cooldownMs: 60000,
),
isFalse,
);
loginChallengeLoopGuard.clear(challenge);
expect(
loginChallengeLoopGuard.shouldAllowAutoAccept(challenge),
isTrue,
);
});
});
}