Added Alexa Music

This commit is contained in:
2026-07-17 10:12:15 -04:00
parent 92c5268dc8
commit 28a8cb98f6
757 changed files with 151171 additions and 85450 deletions
@@ -0,0 +1,58 @@
/** Unit tests for formatDate/formatDateTime honouring HA's per-user profile
* date/time format (issue #97 — dates followed only the UI language, so an
* English UI always showed mm/dd/yyyy even with dd/mm/yyyy configured). */
import { expect } from "@open-wc/testing";
import { formatDate, formatDateTime, setDateTimePrefs } from "../styles";
const reset = () => setDateTimePrefs({ date_format: undefined, time_format: undefined });
describe("formatDate with HA profile date_format (#97)", () => {
afterEach(reset);
it("DMY renders dd/mm/yyyy regardless of language", () => {
setDateTimePrefs({ date_format: "DMY" });
expect(formatDate("2026-08-10", "en")).to.equal("10/08/2026");
expect(formatDate("2026-08-10", "de")).to.equal("10/08/2026");
});
it("MDY renders mm/dd/yyyy regardless of language", () => {
setDateTimePrefs({ date_format: "MDY" });
expect(formatDate("2026-08-10", "de")).to.equal("08/10/2026");
});
it("YMD renders yyyy-mm-dd", () => {
setDateTimePrefs({ date_format: "YMD" });
expect(formatDate("2026-08-10", "en")).to.equal("2026-08-10");
});
it('"language" / unset keeps the language-derived format (backwards compatible)', () => {
setDateTimePrefs({ date_format: "language" });
expect(formatDate("2026-08-10", "en")).to.equal("08/10/2026"); // en → en-US
expect(formatDate("2026-08-10", "de")).to.equal("10.08.2026"); // de → de-DE
reset();
expect(formatDate("2026-08-10", "de")).to.equal("10.08.2026");
});
it("null/invalid input unchanged by prefs", () => {
setDateTimePrefs({ date_format: "DMY" });
expect(formatDate(null, "en")).to.equal("—");
});
});
describe("formatDateTime with HA profile time_format (#97)", () => {
afterEach(reset);
it("24 forces 24h clock even for en", () => {
setDateTimePrefs({ date_format: "DMY", time_format: "24" });
expect(formatDateTime("2026-08-10T14:30:00", "en")).to.equal("10/08/2026 14:30");
});
it("12 forces a 12h clock even for de", () => {
setDateTimePrefs({ date_format: "DMY", time_format: "12" });
const out = formatDateTime("2026-08-10T14:30:00", "de");
expect(out.startsWith("10/08/2026 ")).to.be.true;
expect(out).to.match(/2:30/);
expect(out.toLowerCase()).to.match(/pm|nachm/);
});
});