TF-3622 Fix build E2E test for case deformed inlined image fail on CI

Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
dab246
2025-04-11 16:34:20 +07:00
committed by Dat H. Pham
parent 3248f44cf2
commit 6fb5e8cb79
3 changed files with 14 additions and 20 deletions
@@ -21,7 +21,7 @@ class DeformedInlinedImageScenario extends BaseTestScenario {
<br>
<img
src="https://example.com/image.jpg"
style="width: 2000px; height: 200px;"
style="width: 2000px;height: 200px;"
alt="inline-image-oversize-with-style"/>
<br>
<img
@@ -32,7 +32,7 @@ class DeformedInlinedImageScenario extends BaseTestScenario {
<br>
<img
src="https://example.com/image.jpg"
style="width: 2000px; height: 200px;"
style="width: 2000px;height: 200px;"
width="2000"
height="200"
alt="inline-image-oversize-with-style-and-width-attribute"/>
@@ -45,7 +45,7 @@ class DeformedInlinedImageScenario extends BaseTestScenario {
<br>
<img
src="https://example.com/image.jpg"
style="width: 100px; height: 100px;"
style="width: 100px;height: 100px;"
width="100"
height="100"
alt="inline-image-normal-size-with-style-and-width-attribute"/>
@@ -105,13 +105,10 @@ class DeformedInlinedImageScenario extends BaseTestScenario {
.tap();
expect(emailController, isNotNull);
final webViewController = emailController
?.htmlContentViewKey
?.currentState
?.webViewController;
expect(webViewController, isNotNull);
final htmlContentViewKey = emailController?.htmlContentViewKey;
expect(htmlContentViewKey, isNotNull);
final result = await webViewController?.evaluateJavascript(
final result = await htmlContentViewKey!.currentState!.webViewController.evaluateJavascript(
source: '''
(function() {
const images = document.querySelectorAll('img');
@@ -144,8 +141,7 @@ class DeformedInlinedImageScenario extends BaseTestScenario {
expect(imgWidth, equals('100'));
expect(imgHeight, equals('100'));
} else if (imgAlt == 'inline-image-normal-size-with-style-and-width-attribute') {
expect(imgStyle.contains('max-width: 100%;'), isFalse);
expect(imgStyle.contains('width: 100px; height: 100px;'), isTrue);
expect(imgStyle.contains('width: 100px;height: 100px;'), isTrue);
expect(imgWidth, equals('100'));
expect(imgHeight, equals('100'));
} else {
@@ -195,8 +195,8 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
final currentEmailLoaded = Rxn<EmailLoaded>();
final isEmailContentClipped = RxBool(false);
final attendanceStatus = Rxn<AttendanceStatus>();
final htmlContentViewKey = GlobalKey<HtmlContentViewState>();
GlobalKey<HtmlContentViewState>? htmlContentViewKey;
EmailId? _currentEmailId;
Identity? _identitySelected;
ButtonState? _printEmailButtonState;
@@ -244,9 +244,6 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
void onInit() {
_registerObxStreamListener();
_listenDownloadAttachmentProgressState();
if (PlatformInfo.isIntegrationTesting) {
htmlContentViewKey = GlobalKey<HtmlContentViewState>();
}
super.onInit();
}
@@ -254,9 +251,6 @@ class SingleEmailController extends BaseController with AppLoaderMixin {
void onClose() {
_downloadProgressStateController.close();
_attachmentListScrollController.dispose();
if (PlatformInfo.isIntegrationTesting) {
htmlContentViewKey = null;
}
super.onClose();
}
@@ -447,7 +447,9 @@ class EmailView extends GetWidget<SingleEmailController> {
),
child: LayoutBuilder(builder: (context, constraints) {
return HtmlContentViewer(
key: controller.htmlContentViewKey,
key: PlatformInfo.isIntegrationTesting
? controller.htmlContentViewKey
: null,
contentHtml: allEmailContents,
initialWidth: constraints.maxWidth,
direction: AppUtils.getCurrentDirection(context),
@@ -487,7 +489,9 @@ class EmailView extends GetWidget<SingleEmailController> {
),
child: LayoutBuilder(builder: (context, constraints) {
return HtmlContentViewer(
key: controller.htmlContentViewKey,
key: PlatformInfo.isIntegrationTesting
? controller.htmlContentViewKey
: null,
contentHtml: allEmailContents,
initialWidth: constraints.maxWidth,
direction: AppUtils.getCurrentDirection(context),