MY 화면에 로그아웃(확인 후 로그인 화면으로 복귀) 추가

This commit is contained in:
Sn-Kinos
2026-10-11 00:29:44 +09:00
parent bc19797158
commit 897dff950d
4 changed files with 73 additions and 3 deletions
+29
View File
@@ -0,0 +1,29 @@
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:fancake/app.dart';
import 'package:fancake/features/auth/auth_repository.dart';
/// MY 에서 로그아웃하면 로그인 화면으로 돌아간다 — 한 기기에서 로그인 방법을 바꿔 확인할 수 있어야 한다.
void main() {
testWidgets('MY → 로그아웃 → 확인 → 로그인 화면, 취소면 그대로', (tester) async {
final auth = AuthRepository(releaseMode: false)..signInWithMockSession();
await tester.pumpWidget(FancakeApp(auth: auth));
await tester.pumpAndSettle();
await tester.tap(find.text('MY'));
await tester.pumpAndSettle();
await tester.tap(find.widgetWithText(OutlinedButton, '로그아웃'));
await tester.pumpAndSettle();
await tester.tap(find.text('취소'));
await tester.pumpAndSettle();
expect(auth.isSignedIn, isTrue);
await tester.tap(find.widgetWithText(OutlinedButton, '로그아웃'));
await tester.pumpAndSettle();
await tester.tap(find.widgetWithText(FilledButton, '로그아웃'));
await tester.pumpAndSettle();
expect(auth.isSignedIn, isFalse);
expect(find.byType(NavigationBar), findsNothing);
});
}