From 8df48b516fdfb2be05ccc300ff4b247a39bb08c2 Mon Sep 17 00:00:00 2001 From: Joffrey JAFFEUX Date: Mon, 9 Aug 2021 10:00:56 +0200 Subject: [PATCH] DEV: ensures click listeners are reset between tests (#13900) --- .../discourse/app/mixins/card-contents-base.js | 9 ++++++++- .../javascripts/discourse/tests/helpers/qunit-helpers.js | 2 ++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/app/assets/javascripts/discourse/app/mixins/card-contents-base.js b/app/assets/javascripts/discourse/app/mixins/card-contents-base.js index 486c5ebbc4..2b036eb258 100644 --- a/app/assets/javascripts/discourse/app/mixins/card-contents-base.js +++ b/app/assets/javascripts/discourse/app/mixins/card-contents-base.js @@ -8,11 +8,18 @@ import headerOutletHeights from "discourse/lib/header-outlet-height"; import { inject as service } from "@ember/service"; import { wantsNewWindow } from "discourse/lib/intercept-click"; -let _cardClickListenerSelectors = ["#main-outlet"]; +const DEFAULT_SELECTOR = "#main-outlet"; + +let _cardClickListenerSelectors = [DEFAULT_SELECTOR]; + export function addCardClickListenerSelector(selector) { _cardClickListenerSelectors.push(selector); } +export function resetCardClickListenerSelector() { + _cardClickListenerSelectors = [DEFAULT_SELECTOR]; +} + export default Mixin.create({ router: service(), diff --git a/app/assets/javascripts/discourse/tests/helpers/qunit-helpers.js b/app/assets/javascripts/discourse/tests/helpers/qunit-helpers.js index 4e2b8e350c..f0cf9099e4 100644 --- a/app/assets/javascripts/discourse/tests/helpers/qunit-helpers.js +++ b/app/assets/javascripts/discourse/tests/helpers/qunit-helpers.js @@ -36,6 +36,7 @@ import { resetTopicTitleDecorators } from "discourse/components/topic-title"; import { resetUsernameDecorators } from "discourse/helpers/decorate-username-selector"; import { resetWidgetCleanCallbacks } from "discourse/components/mount-widget"; import { resetUserSearchCache } from "discourse/lib/user-search"; +import { resetCardClickListenerSelector } from "discourse/mixins/card-contents-base"; import sessionFixtures from "discourse/tests/fixtures/session-fixtures"; import { setTopicList } from "discourse/lib/topic-list-tracker"; import sinon from "sinon"; @@ -276,6 +277,7 @@ export function acceptance(name, optionsOrCallback) { resetOneboxCache(); resetCustomPostMessageCallbacks(); resetUserSearchCache(); + resetCardClickListenerSelector(); resetPostMenuExtraButtons(); clearNavItems(); setTopicList(null);