Assert date-window clamp on Board ← Schedule projection per TZ 4.1.8-R2

This commit is contained in:
2026-04-21 18:08:42 +03:00
parent a6454dc07f
commit ef0e1e38e5
@@ -225,6 +225,42 @@ describe("4.1.8-R1/R2: projectScheduleToBoard", () => {
});
expect(p.mode).toBe("route");
});
it("4.1.8-R2: projectScheduleToBoard clamps to today when schedule dateFrom is > board window", () => {
// Clock frozen at 2026-05-15. Schedule dateFrom = 2026-07-01 (47 days forward, outside board's +14 window)
const schedule: ScheduleFilterSnapshot = {
mode: "route",
departure: "MOW",
arrival: "LED",
dateFrom: "20260701",
dateTo: "20260707",
timeFrom: "0000",
timeTo: "2400",
onlyDirect: false,
showReturn: false,
searchExecuted: true,
};
const projected = projectScheduleToBoard(schedule);
expect(projected.date).toBe("20260515"); // clamps to today
});
it("4.1.8-R2: projectScheduleToBoard uses today even when schedule dateFrom is before today-1", () => {
// Schedule dateFrom in the distant past
const schedule: ScheduleFilterSnapshot = {
mode: "route",
departure: "MOW",
arrival: "LED",
dateFrom: "20250101",
dateTo: "20250107",
timeFrom: "0000",
timeTo: "2400",
onlyDirect: false,
showReturn: false,
searchExecuted: true,
};
const projected = projectScheduleToBoard(schedule);
expect(projected.date).toBe("20260515"); // clamps to today
});
});
describe("4.1.1-R26 / 4.1.8-R3: map filter is independent of board/schedule", () => {