Checkpoint: Ajout de la page Factures abonnements, accessible après Factures BAP, partageant les recherches, filtres et actions de la page Factures. Filtres Année et Mois ajoutés aux deux listes, avec règle date de facture puis réception.
This commit is contained in:
17
server/invoicePeriod.test.ts
Normal file
17
server/invoicePeriod.test.ts
Normal file
@@ -0,0 +1,17 @@
|
||||
import { describe, expect, it } from "vitest";
|
||||
import { getInvoicePeriodDate, matchesInvoicePeriod } from "@shared/invoicePeriod";
|
||||
|
||||
describe("filtres de période des factures", () => {
|
||||
it("privilégie la date de facture et accepte le mois demandé", () => {
|
||||
const invoice = { invoiceDate: "2026-05-11T00:00:00.000Z", createdAt: "2026-06-02T00:00:00.000Z" };
|
||||
expect(getInvoicePeriodDate(invoice)?.getFullYear()).toBe(2026);
|
||||
expect(matchesInvoicePeriod(invoice, "2026", "05")).toBe(true);
|
||||
expect(matchesInvoicePeriod(invoice, "2026", "06")).toBe(false);
|
||||
});
|
||||
|
||||
it("utilise la date de réception lorsque la date de facture est absente", () => {
|
||||
const invoice = { invoiceDate: null, createdAt: "2025-01-31T00:00:00.000Z" };
|
||||
expect(matchesInvoicePeriod(invoice, "2025", "01")).toBe(true);
|
||||
expect(matchesInvoicePeriod(invoice, "2026", "all")).toBe(false);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user