discourse/test/javascripts/components/select-kit/user-chooser-test.js.es6

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

59 lines
1.3 KiB
Plaintext
Raw Normal View History

2020-02-11 22:54:56 +08:00
import componentTest from "helpers/component-test";
import { testSelectKitModule } from "./select-kit-test-helper";
testSelectKitModule("user-chooser");
function template() {
return `{{user-chooser value=value}}`;
}
componentTest("displays usernames", {
template: template(),
beforeEach() {
this.set("value", ["bob", "martin"]);
},
async test(assert) {
assert.equal(this.subject.header().name(), "bob,martin");
}
});
componentTest("can remove a username", {
template: template(),
beforeEach() {
this.set("value", ["bob", "martin"]);
},
async test(assert) {
await this.subject.deselectItem("bob");
assert.equal(this.subject.header().name(), "martin");
}
});
componentTest("can add a username", {
template: template(),
beforeEach() {
this.set("value", ["bob", "martin"]);
const response = object => {
return [200, { "Content-Type": "application/json" }, object];
};
// prettier-ignore
server.get("/u/search/users", () => { //eslint-disable-line
return response({users:[{username: "maja", name: "Maja"}]});
});
},
async test(assert) {
await this.subject.expand();
await this.subject.fillInFilter("maja");
await this.subject.keyboard("enter");
assert.equal(this.subject.header().name(), "bob,martin,maja");
}
});