mirror of
https://github.com/discourse/discourse.git
synced 2025-06-02 15:54:43 +08:00
FIX: Poll: critical display issue when results are only shown upon vote (#27732)
This commit is contained in:
@ -14,7 +14,7 @@ const OPTIONS = [
|
||||
module("Poll | Component | poll-info", function (hooks) {
|
||||
setupRenderingTest(hooks);
|
||||
|
||||
test("multiple poll", async function (assert) {
|
||||
test("public multiple poll with results anytime", async function (assert) {
|
||||
this.setProperties({
|
||||
isMultiple: true,
|
||||
min: 1,
|
||||
@ -59,4 +59,58 @@ module("Poll | Component | poll-info", function (hooks) {
|
||||
"displays the public label"
|
||||
);
|
||||
});
|
||||
|
||||
test("public multiple poll with results only shown on vote", async function (assert) {
|
||||
this.setProperties({
|
||||
isMultiple: true,
|
||||
min: 1,
|
||||
max: 2,
|
||||
options: OPTIONS,
|
||||
close: null,
|
||||
closed: false,
|
||||
results: "on_vote",
|
||||
showResults: false,
|
||||
postUserId: 59,
|
||||
isPublic: true,
|
||||
hasVoted: false,
|
||||
voters: [],
|
||||
});
|
||||
|
||||
await render(hbs`<PollInfo
|
||||
@options={{this.options}}
|
||||
@min={{this.min}}
|
||||
@max={{this.max}}
|
||||
@isMultiple={{this.isMultiple}}
|
||||
@close={{this.close}}
|
||||
@closed={{this.closed}}
|
||||
@results={{this.results}}
|
||||
@showResults={{this.showResults}}
|
||||
@postUserId={{this.postUserId}}
|
||||
@isPublic={{this.isPublic}}
|
||||
@hasVoted={{this.hasVoted}}
|
||||
@voters={{this.voters}}
|
||||
/>`);
|
||||
|
||||
assert.strictEqual(
|
||||
query(".poll-info_instructions li.multiple-help-text").textContent.trim(),
|
||||
I18n.t("poll.multiple.help.up_to_max_options", {
|
||||
count: this.max,
|
||||
}).replace(/<\/?[^>]+(>|$)/g, ""),
|
||||
"displays the multiple help text"
|
||||
);
|
||||
|
||||
assert.strictEqual(
|
||||
query(
|
||||
".poll-info_instructions li.results-on-vote span"
|
||||
).textContent.trim(),
|
||||
I18n.t("poll.results.vote.title").replace(/<\/?[^>]+(>|$)/g, ""),
|
||||
"displays the results on vote label"
|
||||
);
|
||||
|
||||
assert.strictEqual(
|
||||
query(".poll-info_instructions li.is-public").textContent.trim(),
|
||||
I18n.t("poll.public.title").replace(/<\/?[^>]+(>|$)/g, ""),
|
||||
"displays the public label"
|
||||
);
|
||||
});
|
||||
});
|
||||
|
Reference in New Issue
Block a user