mirror of
https://github.com/discourse/discourse.git
synced 2025-05-31 09:37:57 +08:00
This reverts commit 10e183113952eee7085c4cdaa214bfa7a4df56a1.
This commit is contained in:
@ -8,6 +8,7 @@ import {
|
||||
import hbs from "htmlbars-inline-precompile";
|
||||
import { click, render, settled, waitFor } from "@ember/test-helpers";
|
||||
import { module, test } from "qunit";
|
||||
import { run } from "@ember/runloop";
|
||||
|
||||
const fakeUpload = {
|
||||
type: ".png",
|
||||
@ -46,11 +47,12 @@ module("Discourse Chat | Component | chat-composer-uploads", function (hooks) {
|
||||
setupRenderingTest(hooks);
|
||||
|
||||
test("loading uploads from an outside source (e.g. draft or editing message)", async function (assert) {
|
||||
this.existingUploads = [fakeUpload];
|
||||
|
||||
await render(hbs`
|
||||
<ChatComposerUploads @existingUploads={{this.existingUploads}} @fileUploadElementId="chat-widget-uploader" />
|
||||
<ChatComposerUploads @fileUploadElementId="chat-widget-uploader" />
|
||||
`);
|
||||
|
||||
this.appEvents = this.container.lookup("service:appEvents");
|
||||
this.appEvents.trigger("chat-composer:load-uploads", [fakeUpload]);
|
||||
await settled();
|
||||
|
||||
assert.strictEqual(count(".chat-composer-upload"), 1);
|
||||
@ -59,7 +61,10 @@ module("Discourse Chat | Component | chat-composer-uploads", function (hooks) {
|
||||
|
||||
test("upload starts and completes", async function (assert) {
|
||||
setupUploadPretender();
|
||||
this.set("onUploadChanged", () => {});
|
||||
this.set("changedUploads", null);
|
||||
this.set("onUploadChanged", (uploads) => {
|
||||
this.set("changedUploads", uploads);
|
||||
});
|
||||
|
||||
await render(hbs`
|
||||
<ChatComposerUploads @fileUploadElementId="chat-widget-uploader" @onUploadChanged={{this.onUploadChanged}} />
|
||||
@ -75,31 +80,34 @@ module("Discourse Chat | Component | chat-composer-uploads", function (hooks) {
|
||||
done();
|
||||
}
|
||||
);
|
||||
|
||||
this.appEvents.trigger(
|
||||
"upload-mixin:chat-composer-uploader:add-files",
|
||||
createFile("avatar.png")
|
||||
);
|
||||
|
||||
await waitFor(".chat-composer-upload");
|
||||
|
||||
assert.dom(".chat-composer-upload").exists({ count: 1 });
|
||||
assert.strictEqual(count(".chat-composer-upload"), 1);
|
||||
});
|
||||
|
||||
test("removing a completed upload", async function (assert) {
|
||||
this.set("changedUploads", null);
|
||||
this.set("onUploadChanged", () => {});
|
||||
|
||||
this.existingUploads = [fakeUpload];
|
||||
this.set("onUploadChanged", (uploads) => {
|
||||
this.set("changedUploads", uploads);
|
||||
});
|
||||
|
||||
await render(hbs`
|
||||
<ChatComposerUploads @existingUploads={{this.existingUploads}} @fileUploadElementId="chat-widget-uploader" @onUploadChanged={{this.onUploadChanged}} />
|
||||
<ChatComposerUploads @fileUploadElementId="chat-widget-uploader" @onUploadChanged={{this.onUploadChanged}} />
|
||||
`);
|
||||
|
||||
assert.dom(".chat-composer-upload").exists({ count: 1 });
|
||||
this.appEvents = this.container.lookup("service:appEvents");
|
||||
run(() =>
|
||||
this.appEvents.trigger("chat-composer:load-uploads", [fakeUpload])
|
||||
);
|
||||
assert.strictEqual(count(".chat-composer-upload"), 1);
|
||||
|
||||
await click(".remove-upload");
|
||||
|
||||
assert.dom(".chat-composer-upload").exists({ count: 0 });
|
||||
assert.strictEqual(count(".chat-composer-upload"), 0);
|
||||
});
|
||||
|
||||
test("cancelling in progress upload", async function (assert) {
|
||||
|
Reference in New Issue
Block a user