From 74ae95db22dd4cdf75e4babef7327970843fdb2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexandre=20K=C3=BChn?= Date: Wed, 16 Sep 2020 11:04:15 +0000 Subject: [PATCH] [FIX] mail: do not fetch attachment style in QUnit tests MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Task-2339931 closes odoo/odoo#57875 X-original-commit: 7586f7756859bb0711eee8a82bf728a039ad0d72 Signed-off-by: Alexandre Kühn (aku) --- addons/mail/static/src/components/attachment/attachment.js | 6 ++++++ addons/mail/static/src/env/test_env.js | 7 +++++++ addons/mail/static/src/js/main.js | 7 +++++++ 3 files changed, 20 insertions(+) diff --git a/addons/mail/static/src/components/attachment/attachment.js b/addons/mail/static/src/components/attachment/attachment.js index 76922ed7a3c..a17ed341b9a 100644 --- a/addons/mail/static/src/components/attachment/attachment.js +++ b/addons/mail/static/src/components/attachment/attachment.js @@ -71,6 +71,12 @@ class Attachment extends Component { if (this.attachment.fileType !== 'image') { return ''; } + if (this.env.isQUnitTest) { + // background-image:url is hardly mockable, and attachments in + // QUnit tests do not actually exist in DB, so style should not + // be fetched at all. + return ''; + } let size; if (this.detailsMode === 'card') { size = '38x38'; diff --git a/addons/mail/static/src/env/test_env.js b/addons/mail/static/src/env/test_env.js index fb16caaaf5e..048bfc8d65f 100644 --- a/addons/mail/static/src/env/test_env.js +++ b/addons/mail/static/src/env/test_env.js @@ -56,6 +56,13 @@ function addMessagingToEnv(providedEnv = {}) { } return this.messaging.isInitialized; }, + /** + * States whether the environment is in QUnit test or not. + * + * Useful to prevent some behaviour in QUnit tests, like applying + * style of attachment that uses url. + */ + isQUnitTest: true, loadingBaseDelayDuration: providedEnv.loadingBaseDelayDuration || 0, messaging: undefined, messagingCreatedPromise: makeDeferred(), diff --git a/addons/mail/static/src/js/main.js b/addons/mail/static/src/js/main.js index f8199c4dc34..d19a8edb8e9 100644 --- a/addons/mail/static/src/js/main.js +++ b/addons/mail/static/src/js/main.js @@ -71,6 +71,13 @@ Object.assign(env, { } return this.messaging.isInitialized; }, + /** + * States whether the environment is in QUnit test or not. + * + * Useful to prevent some behaviour in QUnit tests, like applying + * style of attachment that uses url. + */ + isQUnitTest: false, loadingBaseDelayDuration: 400, messaging: undefined, messagingBus: new EventBus(),