54 lines
1.7 KiB
Dart
54 lines
1.7 KiB
Dart
import 'package:ducafe_ui_core/ducafe_ui_core.dart';
|
|
import 'package:flutter/material.dart';
|
|
import 'package:flutter_test/flutter_test.dart';
|
|
import 'package:forui/forui.dart';
|
|
import 'package:get/get.dart';
|
|
|
|
import 'package:pj_supermarket_cloud/common/index.dart';
|
|
import 'package:pj_supermarket_cloud/pages/root/load/controller.dart';
|
|
import 'package:pj_supermarket_cloud/pages/root/load/view.dart';
|
|
|
|
void main() {
|
|
testWidgets('启动步骤在紧凑窗口中可滚动且不会垂直溢出', (tester) async {
|
|
// 与问题日志中的 1280×720 运行窗口一致,此时步骤区只有约 264px 高。
|
|
await tester.binding.setSurfaceSize(const Size(1280, 720));
|
|
addTearDown(() async {
|
|
await tester.binding.setSurfaceSize(null);
|
|
Get.reset();
|
|
});
|
|
|
|
Get.put<LoadController>(_TestLoadController(AppControl()));
|
|
|
|
await tester.pumpWidget(
|
|
ScreenUtilInit(
|
|
designSize: const Size(1920, 1080),
|
|
minTextAdapt: true,
|
|
splitScreenMode: true,
|
|
builder: (_, __) => MaterialApp(
|
|
home: FTheme(
|
|
data: FThemes.zinc.light,
|
|
child: const LoadPage(),
|
|
),
|
|
),
|
|
),
|
|
);
|
|
await tester.pump();
|
|
|
|
expect(find.byType(ListView), findsOneWidget);
|
|
expect(find.text('加载终端配置'), findsOneWidget);
|
|
final scrollable = tester.state<ScrollableState>(find.byType(Scrollable));
|
|
expect(scrollable.position.maxScrollExtent, greaterThan(0));
|
|
expect(tester.takeException(), isNull);
|
|
});
|
|
}
|
|
|
|
class _TestLoadController extends LoadController {
|
|
_TestLoadController(AppControl appControl) : super(appControl: appControl);
|
|
|
|
@override
|
|
void onReady() {}
|
|
|
|
@override
|
|
Future<void> retry() async {}
|
|
}
|