import { describe, expect, it } from "vitest"; import { requiredQuantity, suggestionHidden } from "./shopping"; describe("requiredQuantity", () => { it("ürün tipi kaleminde girilen miktar; boşsa 0", () => { expect(requiredQuantity({ kind: "type", quantity: 2500 }, null)).toBe(2500); expect(requiredQuantity({ kind: "type", quantity: null }, null)).toBe(0); }); it("ürün kaleminde paket adedi × paketin tip karşılığı; boşsa 1 paket", () => { // 2 paket × 50 yıkama expect(requiredQuantity({ kind: "product", quantity: 2000 }, 50_000)).toBe(100_000); expect(requiredQuantity({ kind: "product", quantity: null }, 500)).toBe(500); expect(requiredQuantity({ kind: "product", quantity: 2000 }, null)).toBe(0); }); }); describe("suggestionHidden", () => { const d = (s: string) => new Date(s); it("reddedilmemişse görünür", () => { expect(suggestionHidden(null, null)).toBe(false); }); it("redden sonra alım yoksa gizli, alım gelince yeniden görünür", () => { expect(suggestionHidden(d("2026-11-01"), null)).toBe(true); expect(suggestionHidden(d("2026-11-01"), d("2026-10-20"))).toBe(true); expect(suggestionHidden(d("2026-11-01"), d("2026-11-03"))).toBe(false); }); });