mirror of
https://github.com/discourse/discourse.git
synced 2025-02-20 02:36:28 +00:00
DEV: Add cleanup methods for composer extension hooks that tests can use (#13034)
This commit is contained in:
parent
21c301aa72
commit
63ca9e0650
@ -45,25 +45,35 @@ import userSearch from "discourse/lib/user-search";
|
|||||||
|
|
||||||
const REBUILD_SCROLL_MAP_EVENTS = ["composer:resized", "composer:typed-reply"];
|
const REBUILD_SCROLL_MAP_EVENTS = ["composer:resized", "composer:typed-reply"];
|
||||||
|
|
||||||
const uploadHandlers = [];
|
let uploadHandlers = [];
|
||||||
export function addComposerUploadHandler(extensions, method) {
|
export function addComposerUploadHandler(extensions, method) {
|
||||||
uploadHandlers.push({
|
uploadHandlers.push({
|
||||||
extensions,
|
extensions,
|
||||||
method,
|
method,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
export function cleanUpComposerUploadHandler() {
|
||||||
|
uploadHandlers = [];
|
||||||
|
}
|
||||||
|
|
||||||
const uploadProcessorQueue = [];
|
let uploadProcessorQueue = [];
|
||||||
const uploadProcessorActions = {};
|
let uploadProcessorActions = {};
|
||||||
export function addComposerUploadProcessor(queueItem, actionItem) {
|
export function addComposerUploadProcessor(queueItem, actionItem) {
|
||||||
uploadProcessorQueue.push(queueItem);
|
uploadProcessorQueue.push(queueItem);
|
||||||
Object.assign(uploadProcessorActions, actionItem);
|
Object.assign(uploadProcessorActions, actionItem);
|
||||||
}
|
}
|
||||||
|
export function cleanUpComposerUploadProcessor() {
|
||||||
|
uploadProcessorQueue = [];
|
||||||
|
uploadProcessorActions = {};
|
||||||
|
}
|
||||||
|
|
||||||
const uploadMarkdownResolvers = [];
|
let uploadMarkdownResolvers = [];
|
||||||
export function addComposerUploadMarkdownResolver(resolver) {
|
export function addComposerUploadMarkdownResolver(resolver) {
|
||||||
uploadMarkdownResolvers.push(resolver);
|
uploadMarkdownResolvers.push(resolver);
|
||||||
}
|
}
|
||||||
|
export function cleanUpComposerUploadMarkdownResolver() {
|
||||||
|
uploadMarkdownResolvers = [];
|
||||||
|
}
|
||||||
|
|
||||||
export default Component.extend({
|
export default Component.extend({
|
||||||
classNameBindings: ["showToolbar:toolbar-visible", ":wmd-controls"],
|
classNameBindings: ["showToolbar:toolbar-visible", ":wmd-controls"],
|
||||||
|
@ -40,6 +40,11 @@ import sinon from "sinon";
|
|||||||
import siteFixtures from "discourse/tests/fixtures/site-fixtures";
|
import siteFixtures from "discourse/tests/fixtures/site-fixtures";
|
||||||
import { clearResolverOptions } from "discourse-common/resolver";
|
import { clearResolverOptions } from "discourse-common/resolver";
|
||||||
import { clearCustomNavItemHref } from "discourse/models/nav-item";
|
import { clearCustomNavItemHref } from "discourse/models/nav-item";
|
||||||
|
import {
|
||||||
|
cleanUpComposerUploadHandler,
|
||||||
|
cleanUpComposerUploadMarkdownResolver,
|
||||||
|
cleanUpComposerUploadProcessor,
|
||||||
|
} from "discourse/components/composer-editor";
|
||||||
|
|
||||||
const LEGACY_ENV = !setupApplicationTest;
|
const LEGACY_ENV = !setupApplicationTest;
|
||||||
|
|
||||||
@ -266,6 +271,9 @@ export function acceptance(name, optionsOrCallback) {
|
|||||||
_clearSnapshots();
|
_clearSnapshots();
|
||||||
setURLContainer(null);
|
setURLContainer(null);
|
||||||
setDefaultOwner(null);
|
setDefaultOwner(null);
|
||||||
|
cleanUpComposerUploadHandler();
|
||||||
|
cleanUpComposerUploadProcessor();
|
||||||
|
cleanUpComposerUploadMarkdownResolver();
|
||||||
app._runInitializer("instanceInitializers", (initName, initializer) => {
|
app._runInitializer("instanceInitializers", (initName, initializer) => {
|
||||||
if (initializer && initializer.teardown) {
|
if (initializer && initializer.teardown) {
|
||||||
initializer.teardown(this.container);
|
initializer.teardown(this.container);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user