mirror of
https://github.com/discourse/discourse.git
synced 2025-02-16 17:52:45 +08:00
68 lines
1.8 KiB
JavaScript
68 lines
1.8 KiB
JavaScript
import {
|
|
acceptance,
|
|
fakeTime,
|
|
loggedInUser,
|
|
queryAll,
|
|
updateCurrentUser,
|
|
} from "discourse/tests/helpers/qunit-helpers";
|
|
import { click, visit } from "@ember/test-helpers";
|
|
import { test } from "qunit";
|
|
import I18n from "I18n";
|
|
|
|
acceptance("Topic - Set Slow Mode", function (needs) {
|
|
let clock = null;
|
|
|
|
needs.user();
|
|
needs.pretender((server, helper) => {
|
|
server.post("/t/280/timer", () =>
|
|
helper.response({
|
|
success: "OK",
|
|
execute_at: new Date(
|
|
new Date().getTime() + 1 * 60 * 60 * 1000
|
|
).toISOString(),
|
|
duration_minutes: 1440,
|
|
based_on_last_post: false,
|
|
closed: false,
|
|
category_id: null,
|
|
})
|
|
);
|
|
});
|
|
|
|
needs.hooks.beforeEach(() => {
|
|
const timezone = loggedInUser().timezone;
|
|
clock = fakeTime("2100-05-03T08:00:00", timezone, true); // Monday morning
|
|
});
|
|
|
|
needs.hooks.afterEach(() => {
|
|
clock.restore();
|
|
});
|
|
|
|
test("shows correct timeframe options", async function (assert) {
|
|
updateCurrentUser({ moderator: true });
|
|
await visit("/t/internationalization-localization");
|
|
await click(".toggle-admin-menu");
|
|
await click(".topic-admin-slow-mode button");
|
|
|
|
await click(".future-date-input-selector-header");
|
|
|
|
const options = Array.from(
|
|
queryAll(`ul.select-kit-collection li span.name`).map((_, x) =>
|
|
x.innerText.trim()
|
|
)
|
|
);
|
|
|
|
const expected = [
|
|
I18n.t("time_shortcut.later_today"),
|
|
I18n.t("time_shortcut.tomorrow"),
|
|
I18n.t("time_shortcut.two_days"),
|
|
I18n.t("time_shortcut.next_week"),
|
|
I18n.t("time_shortcut.two_weeks"),
|
|
I18n.t("time_shortcut.next_month"),
|
|
I18n.t("time_shortcut.two_months"),
|
|
I18n.t("time_shortcut.custom"),
|
|
];
|
|
|
|
assert.deepEqual(options, expected, "options are correct");
|
|
});
|
|
});
|