ha-frontend-cdce8p/test/common/datetime/format_date_time.ts
Bram Kragten 1bccbd4173
Use browser default time and number formatting with polyfills if needed (#9481)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-29 23:34:52 +00:00

54 lines
1.4 KiB
TypeScript

import { assert } from "chai";
import {
formatDateTime,
formatDateTimeWithSeconds,
} from "../../../src/common/datetime/format_date_time";
import { NumberFormat, TimeFormat } from "../../../src/data/translation";
describe("formatDateTime", () => {
const dateObj = new Date(2017, 10, 18, 23, 12, 13, 400);
it("Formats English date times", () => {
assert.strictEqual(
formatDateTime(dateObj, {
language: "en",
number_format: NumberFormat.language,
time_format: TimeFormat.am_pm,
}),
"November 18, 2017 at 11:12 PM"
);
assert.strictEqual(
formatDateTime(dateObj, {
language: "en",
number_format: NumberFormat.language,
time_format: TimeFormat.twenty_four,
}),
"November 18, 2017 at 23:12"
);
});
});
describe("formatDateTimeWithSeconds", () => {
const dateObj = new Date(2017, 10, 18, 23, 12, 13, 400);
it("Formats English date times with seconds", () => {
assert.strictEqual(
formatDateTimeWithSeconds(dateObj, {
language: "en",
number_format: NumberFormat.language,
time_format: TimeFormat.am_pm,
}),
"November 18, 2017 at 11:12:13 PM"
);
assert.strictEqual(
formatDateTimeWithSeconds(dateObj, {
language: "en",
number_format: NumberFormat.language,
time_format: TimeFormat.twenty_four,
}),
"November 18, 2017 at 23:12:13"
);
});
});