This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/app/assets/javascripts/discourse/tests/integration/components/composer-editor-test.js
2022-11-16 10:33:47 +01:00

45 lines
1.3 KiB
JavaScript

import { module, test } from "qunit";
import { setupRenderingTest } from "discourse/tests/helpers/component-test";
import { fillIn, render } from "@ember/test-helpers";
import { hbs } from "ember-cli-htmlbars";
import pretender, { response } from "discourse/tests/helpers/create-pretender";
module("Integration | Component | ComposerEditor", function (hooks) {
setupRenderingTest(hooks);
test("warns about users that will not see a mention", async function (assert) {
assert.expect(1);
this.set("model", {});
this.set("noop", () => {});
this.set("expectation", (warnings) => {
assert.deepEqual(warnings, [
{ name: "user-no", reason: "a reason" },
{ name: "user-nope", reason: "a reason" },
]);
});
pretender.get("/u/is_local_username", () => {
return response({
cannot_see: {
"user-no": "a reason",
"user-nope": "a reason",
},
mentionable_groups: [],
valid: ["user-ok", "user-no", "user-nope"],
valid_groups: [],
});
});
await render(hbs`
<ComposerEditor
@composer={{this.model}}
@afterRefresh={{this.noop}}
@cannotSeeMention={{this.expectation}}
/>
`);
await fillIn("textarea", "@user-no @user-ok @user-nope");
});
});