| import { DateLib, type DayPickerLocale } from "../classes/DateLib.js"; | |
| import { getLabels } from "../helpers/getLabels.js"; | |
| import { enUS } from "../locale/en-US.js"; | |
| import { it } from "../locale/it.js"; | |
| import { labelNext } from "./labelNext"; | |
| test("returns the default label when no locale translation is provided", () => { | |
| expect(labelNext(new Date())).toEqual("Go to the Next Month"); | |
| }); | |
| test("returns the translated label from the locale when available", () => { | |
| const labels = getLabels(undefined, new DateLib({ locale: it }).options); | |
| expect(labels.labelNext(new Date())).toEqual("Vai al mese successivo"); | |
| }); | |
| test("calls the locale label function when provided", () => { | |
| const locale: DayPickerLocale = { | |
| ...enUS, | |
| labels: { | |
| labelNext: (month) => | |
| month | |
| ? `Next: ${month.toLocaleDateString("en-US", { month: "long" })}` | |
| : "Next", | |
| }, | |
| }; | |
| const labels = getLabels(undefined, new DateLib({ locale }).options); | |
| expect(labels.labelNext(new Date(2022, 5, 1))).toEqual("Next: June"); | |
| }); | |