TF-3493 Refactor integration test code for performance and maintainability

Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
dab246
2025-02-21 01:51:19 +07:00
committed by Dat H. Pham
parent 23f5121f03
commit abdcb614ce
25 changed files with 157 additions and 401 deletions
@@ -1,40 +1,29 @@
import 'package:flutter_test/flutter_test.dart';
import 'package:tmail_ui_user/features/composer/presentation/composer_view.dart';
import '../base/base_scenario.dart';
import '../base/base_test_scenario.dart';
import '../robots/composer_robot.dart';
import '../robots/thread_robot.dart';
import 'login_with_basic_auth_scenario.dart';
class SendEmailScenario extends BaseScenario {
const SendEmailScenario(
super.$,
{
required this.loginWithBasicAuthScenario,
required this.additionalRecipient,
required this.subject,
required this.content
}
);
final LoginWithBasicAuthScenario loginWithBasicAuthScenario;
final String additionalRecipient;
final String subject;
final String content;
class SendEmailScenario extends BaseTestScenario {
const SendEmailScenario(super.$);
@override
Future<void> execute() async {
Future<void> runTestLogic() async {
const additionalRecipient = String.fromEnvironment('ADDITIONAL_MAIL_RECIPIENT');
const email = String.fromEnvironment('BASIC_AUTH_EMAIL');
const subject = 'Test subject';
const content = 'Test content';
final threadRobot = ThreadRobot($);
final composerRobot = ComposerRobot($);
await loginWithBasicAuthScenario.execute();
await threadRobot.openComposer();
await _expectComposerViewVisible();
await composerRobot.grantContactPermission();
await composerRobot.addRecipient(loginWithBasicAuthScenario.email);
await composerRobot.addRecipient(email);
await composerRobot.addRecipient(additionalRecipient);
await composerRobot.addSubject(subject);
await composerRobot.addContent(content);