This structure is closer to how ember-cli expects tests to be placed. It is not their final position, just the first step towards it.
56 lines
1.3 KiB
JavaScript
56 lines
1.3 KiB
JavaScript
import selectKit from "helpers/select-kit-helper";
|
|
import componentTest from "helpers/component-test";
|
|
import Topic from "discourse/models/topic";
|
|
|
|
const buildTopic = function (pinned = true) {
|
|
return Topic.create({
|
|
id: 1234,
|
|
title: "Qunit Test Topic",
|
|
deleted_at: new Date(),
|
|
pinned,
|
|
});
|
|
};
|
|
|
|
moduleForComponent("select-kit/pinned-options", {
|
|
integration: true,
|
|
beforeEach: function () {
|
|
this.set("subject", selectKit());
|
|
},
|
|
});
|
|
|
|
componentTest("unpinning", {
|
|
template: "{{pinned-options value=topic.pinned topic=topic}}",
|
|
|
|
beforeEach() {
|
|
this.siteSettings.automatically_unpin_topics = false;
|
|
this.set("topic", buildTopic());
|
|
},
|
|
|
|
async test(assert) {
|
|
assert.equal(this.subject.header().name(), "pinned");
|
|
|
|
await this.subject.expand();
|
|
await this.subject.selectRowByValue("unpinned");
|
|
|
|
assert.equal(this.subject.header().name(), "unpinned");
|
|
},
|
|
});
|
|
|
|
componentTest("pinning", {
|
|
template: "{{pinned-options value=topic.pinned topic=topic}}",
|
|
|
|
beforeEach() {
|
|
this.siteSettings.automatically_unpin_topics = false;
|
|
this.set("topic", buildTopic(false));
|
|
},
|
|
|
|
async test(assert) {
|
|
assert.equal(this.subject.header().name(), "unpinned");
|
|
|
|
await this.subject.expand();
|
|
await this.subject.selectRowByValue("pinned");
|
|
|
|
assert.equal(this.subject.header().name(), "pinned");
|
|
},
|
|
});
|