tests(pwa): часы в тестах баланса заморожены — мок-штраф не выпадает из окна недели

Экран режет постановления по периоду «последние 7 дней от сегодня», а даты
в моках фиксированные: с 21.08 штраф от 13.08 вышел из окна, и два теста
падали на чистом HEAD. Морозим только Date (таймеры настоящие, иначе
userEvent/waitFor зависнут) на 18.08 — день, когда появился фильтр.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-24 20:49:54 +10:00
co-authored by Claude Fable 5
parent 0c433280fe
commit a7d5f27b53
@@ -1,4 +1,4 @@
import { describe, it, expect, vi } from "vitest";
import { describe, it, expect, vi, beforeAll, afterAll } from "vitest";
import { render, screen, within } from "@testing-library/react";
import userEvent from "@testing-library/user-event";
import { MemoryRouter, Route, Routes } from "react-router-dom";
@@ -38,6 +38,16 @@ vi.mock("@/api/driver", () => ({
})),
}));
// Экран режет постановления по периоду «последние 7 дней от сегодня», а даты в
// моках фиксированные: без замороженных часов штраф от 13.08 выпадает из окна,
// как только настоящее «сегодня» уходит за 20.08. Морозим только Date — таймеры
// остаются настоящими, иначе userEvent и waitFor зависнут.
beforeAll(() => {
vi.useFakeTimers({ toFake: ["Date"] });
vi.setSystemTime(new Date("2026-08-18T12:00:00Z"));
});
afterAll(() => vi.useRealTimers());
import { BalancePage, balancePollMs } from "./BalancePage";
import { markPaymentActivity } from "@/lib/paymentWatch";
import * as driver from "@/api/driver";