fix(pwa): в штрафах только факт и сумма, без кухни расчётов
С карточки убраны строки про номинал постановления, скидку и «в ГИБДД постановление закрыто», из списка — абзац о том, кто и как платит ГИБДД. Остаётся то, ради чего экран делался: фотография нарушения, статья, место, скорость, начисленная сумма и погашен ли долг. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -9,9 +9,8 @@ import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
|
||||
const FINE = {
|
||||
id: 12, number: "18810525260813035846", date: "2026-08-12",
|
||||
article: "12.09.2 - Превышение скорости", address: "Владивосток, Некрасовская, 90",
|
||||
car_number: "А947УТ125", amount: 618.75, billed: true, fine_amount: 750,
|
||||
discount_amount: 375, discount_until: "2026-09-01",
|
||||
settled: "owed" as const, closed_with_gibdd: true, cancelled: false, has_photo: true,
|
||||
car_number: "А947УТ125", amount: 618.75,
|
||||
settled: "owed" as const, cancelled: false, has_photo: true,
|
||||
};
|
||||
|
||||
vi.mock("@/api/driver", () => ({
|
||||
@@ -89,15 +88,24 @@ describe("карточка штрафа", () => {
|
||||
expect(img.closest("a")).toHaveAttribute("target", "_blank");
|
||||
});
|
||||
|
||||
it("объясняет, почему начислено меньше номинала постановления", async () => {
|
||||
it("показывает начисленную сумму, скорость и постановление", async () => {
|
||||
wrap("/fines/12");
|
||||
expect(await screen.findByText("618,75 ₽")).toBeInTheDocument();
|
||||
expect(screen.getByText(/Постановление — 750 ₽/)).toBeInTheDocument();
|
||||
expect(screen.getByText(/В ГИБДД постановление закрыто/)).toBeInTheDocument();
|
||||
expect(screen.getByText(/63 км\/ч при разрешённых 40/)).toBeInTheDocument();
|
||||
expect(screen.getByText("18810525260813035846")).toBeInTheDocument();
|
||||
});
|
||||
|
||||
it("расчёты парка с ГИБДД водителю не показываются", async () => {
|
||||
// Решение владельца: без номинала, скидки и «парк уже оплатил». В начисление
|
||||
// заложена комиссия парка, и любая из этих строк рядом требует объяснений.
|
||||
wrap("/fines/12");
|
||||
await screen.findByText("618,75 ₽");
|
||||
expect(screen.queryByText(/750/)).not.toBeInTheDocument();
|
||||
expect(screen.queryByText(/скидк/i)).not.toBeInTheDocument();
|
||||
expect(screen.queryByText(/ГИБДД/)).not.toBeInTheDocument();
|
||||
expect(screen.queryByText(/парк/i)).not.toBeInTheDocument();
|
||||
});
|
||||
|
||||
it("неоплаченный штраф ведёт к оплате штрафов", async () => {
|
||||
wrap("/fines/12");
|
||||
await userEvent.click(await screen.findByRole("button", { name: /Оплатить штрафы/ }));
|
||||
|
||||
Reference in New Issue
Block a user