TF-2953 Set up Patrol tests

This commit is contained in:
DatDang
2024-10-11 11:58:09 +07:00
committed by Dat H. Pham
parent e8e709d63a
commit 25437ba92e
18 changed files with 437 additions and 18 deletions
+31
View File
@@ -0,0 +1,31 @@
import 'package:flutter/foundation.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:patrol/patrol.dart';
import 'package:tmail_ui_user/main.dart' as app;
class TestBase {
void runPatrolTest({
required String description,
required Function(PatrolIntegrationTester $) test,
}) {
patrolTest(
description,
config: const PatrolTesterConfig(
settlePolicy: SettlePolicy.trySettle,
visibleTimeout: Duration(minutes: 1)),
nativeAutomatorConfig: const NativeAutomatorConfig(
findTimeout: Duration(seconds: 10),
),
framePolicy: LiveTestWidgetsFlutterBindingFramePolicy.benchmarkLive,
($) async {
await app.runTmail();
// https://github.com/leancodepl/patrol/issues/1602#issuecomment-1665317814
final originalOnError = FlutterError.onError!;
FlutterError.onError = (FlutterErrorDetails details) {
originalOnError(details);
};
await test($);
});
}
}