Files
ttstd_family_care/test/widget_test.dart
2026-08-17 11:10:46 +08:00

31 lines
1.2 KiB
Dart
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// 应用启动烟雾测试。
//
// 验证 CupertinoApp.router + ProviderScope + GoRouter 能正常构建并渲染首屏。
// 重构后入口为 buildApp(buildAppRouter()),不再存在默认模板的 MyApp / Counter。
//
// 注意TokenStorage 依赖 MMKV需在测试环境先 initialize真实运行在 main 中完成)。
import 'package:cupertino_ui/cupertino_ui.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:ttstd_family_care/app/app.dart';
import 'package:ttstd_family_care/app/router/app_router.dart';
import 'package:ttstd_family_care/core/storage/token_storage.dart';
void main() {
setUpAll(() async {
// 初始化 MMKV避免启动页路由决策时访问未就绪的存储。
await TokenStorage.initialize();
});
testWidgets('应用可正常构建并渲染首屏', (tester) async {
// 构建真实应用根组件ProviderScope + CupertinoApp.router
await tester.pumpWidget(buildApp(buildAppRouter()));
// 等待启动页 2s 路由决策定时器与导航动画完成。
await tester.pumpAndSettle(const Duration(seconds: 5));
// 应用根组件成功挂载(整棵组件树的根始终为 CupertinoApp
expect(find.byType(CupertinoApp), findsOneWidget);
});
}