DEV: prevents post-cooked decorators to leak between tests (#7744)

DEV: prevents post-cooked decorators to leak between tests (#7744)

diff --git a/app/assets/javascripts/discourse/widgets/post-cooked.js.es6 b/app/assets/javascripts/discourse/widgets/post-cooked.js.es6
index 4daa426..d434012 100644
--- a/app/assets/javascripts/discourse/widgets/post-cooked.js.es6
+++ b/app/assets/javascripts/discourse/widgets/post-cooked.js.es6
@@ -4,13 +4,17 @@ import { isValidLink } from "discourse/lib/click-track";
 import { number } from "discourse/lib/formatter";
 import highlightText from "discourse/lib/highlight-text";
 
-const _decorators = [];
+let _decorators = [];
 
 // Don't call this directly: use `plugin-api/decorateCooked`
 export function addDecorator(cb) {
   _decorators.push(cb);
 }
 
+export function resetDecorators() {
+  _decorators = [];
+}
+
 export default class PostCooked {
   constructor(attrs, decoratorHelper, currentUser) {
     this.attrs = attrs;
diff --git a/test/javascripts/helpers/qunit-helpers.js.es6 b/test/javascripts/helpers/qunit-helpers.js.es6
index 652d3d1..759e64f 100644
--- a/test/javascripts/helpers/qunit-helpers.js.es6
+++ b/test/javascripts/helpers/qunit-helpers.js.es6
@@ -13,6 +13,7 @@ import { flushMap } from "discourse/models/store";
 import { clearRewrites } from "discourse/lib/url";
 import { initSearchData } from "discourse/widgets/search-menu";
 import { resetDecorators } from "discourse/widgets/widget";
+import { resetDecorators as resetPostCookedDecorators } from "discourse/widgets/post-cooked";
 import { resetCache as resetOneboxCache } from "pretty-text/oneboxer";
 import { resetCustomPostMessageCallbacks } from "discourse/controllers/topic";
 
@@ -124,6 +125,7 @@ export function acceptance(name, options) {
       clearRewrites();
       initSearchData();
       resetDecorators();
+      resetPostCookedDecorators();
       resetOneboxCache();
       resetCustomPostMessageCallbacks();
       Discourse.reset();

GitHub sha: 4deb0f6d