mirror of
https://github.com/MichMich/MagicMirror.git
synced 2025-06-29 12:39:45 +00:00
I felt like adding a spell checker, but it's okay if you find it superfluous. At least then we could fix the found spell issues. What is still missing is an automatic integration so that the spell checker does not have to be called manually. Would it perhaps make sense to always do it before a release?
84 lines
3.6 KiB
JavaScript
84 lines
3.6 KiB
JavaScript
const helpers = require("../helpers/global-setup");
|
|
|
|
describe("Compliments module", () => {
|
|
|
|
/**
|
|
* move similar tests in function doTest
|
|
* @param {Array} complimentsArray The array of compliments.
|
|
* @returns {boolean} result
|
|
*/
|
|
const doTest = async (complimentsArray) => {
|
|
await helpers.getElement(".compliments");
|
|
const elem = await helpers.getElement(".module-content");
|
|
expect(elem).not.toBeNull();
|
|
expect(complimentsArray).toContain(await elem.textContent());
|
|
return true;
|
|
};
|
|
|
|
afterEach(async () => {
|
|
await helpers.stopApplication();
|
|
});
|
|
|
|
describe("parts of days", () => {
|
|
it("Morning compliments for that part of day", async () => {
|
|
await helpers.startApplication("tests/configs/modules/compliments/compliments_parts_day.js", "01 Oct 2022 10:00:00 GMT");
|
|
await expect(doTest(["Hi", "Good Morning", "Morning test"])).resolves.toBe(true);
|
|
});
|
|
|
|
it("Afternoon show Compliments for that part of day", async () => {
|
|
await helpers.startApplication("tests/configs/modules/compliments/compliments_parts_day.js", "01 Oct 2022 15:00:00 GMT");
|
|
await expect(doTest(["Hello", "Good Afternoon", "Afternoon test"])).resolves.toBe(true);
|
|
});
|
|
|
|
it("Evening show Compliments for that part of day", async () => {
|
|
await helpers.startApplication("tests/configs/modules/compliments/compliments_parts_day.js", "01 Oct 2022 20:00:00 GMT");
|
|
await expect(doTest(["Hello There", "Good Evening", "Evening test"])).resolves.toBe(true);
|
|
});
|
|
});
|
|
|
|
describe("Feature date in compliments module", () => {
|
|
describe("Set date and empty compliments for anytime, morning, evening and afternoon", () => {
|
|
it("shows happy new year compliment on new years day", async () => {
|
|
await helpers.startApplication("tests/configs/modules/compliments/compliments_date.js", "01 Jan 2022 10:00:00 GMT");
|
|
await expect(doTest(["Happy new year!"])).resolves.toBe(true);
|
|
});
|
|
});
|
|
|
|
describe("Test only custom date events shown with new property", () => {
|
|
it("shows 'Special day message' on May 6", async () => {
|
|
await helpers.startApplication("tests/configs/modules/compliments/compliments_specialDayUnique_true.js", "06 May 2022 10:00:00 GMT");
|
|
await expect(doTest(["Special day message"])).resolves.toBe(true);
|
|
});
|
|
});
|
|
|
|
describe("Test all date events shown without new property", () => {
|
|
it("shows 'any message' on May 6", async () => {
|
|
await helpers.startApplication("tests/configs/modules/compliments/compliments_specialDayUnique_false.js", "06 May 2022 10:00:00 GMT");
|
|
await expect(doTest(["Special day message", "Typical message 1", "Typical message 2", "Typical message 3"])).resolves.toBe(true);
|
|
});
|
|
});
|
|
|
|
describe("Test only custom cron date event shown with new property", () => {
|
|
it("shows 'any message' on May 6", async () => {
|
|
await helpers.startApplication("tests/configs/modules/compliments/compliments_cron_entry.js", "06 May 2022 17:03:00 GMT");
|
|
await expect(doTest(["just pub time"])).resolves.toBe(true);
|
|
});
|
|
});
|
|
|
|
describe("Test any event shows after time window", () => {
|
|
it("shows 'any message' on May 6", async () => {
|
|
await helpers.startApplication("tests/configs/modules/compliments/compliments_cron_entry.js", "06 May 2022 17:11:00 GMT");
|
|
await expect(doTest(["just a test"])).resolves.toBe(true);
|
|
});
|
|
});
|
|
|
|
describe("Test any event shows different day", () => {
|
|
it("shows 'any message' on May 5", async () => {
|
|
await helpers.startApplication("tests/configs/modules/compliments/compliments_cron_entry.js", "05 May 2022 17:00:00 GMT");
|
|
await expect(doTest(["just a test"])).resolves.toBe(true);
|
|
});
|
|
});
|
|
|
|
});
|
|
});
|