5d370a062e
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
26 lines
1.0 KiB
TypeScript
26 lines
1.0 KiB
TypeScript
import { describe, expect, it } from "vitest";
|
|
import { contactDelta, dueState, isOutgoing } from "./contacts";
|
|
import { addDays } from "./recurrence";
|
|
|
|
describe("cari", () => {
|
|
it("yön ve bakiye etkisi", () => {
|
|
expect(isOutgoing("lend")).toBe(true);
|
|
expect(isOutgoing("repay")).toBe(true);
|
|
expect(isOutgoing("borrow")).toBe(false);
|
|
expect(contactDelta("lend", 100)).toBe(100);
|
|
expect(contactDelta("repay", 100)).toBe(100);
|
|
expect(contactDelta("borrow", 100)).toBe(-100);
|
|
expect(contactDelta("collect", 100)).toBe(-100);
|
|
});
|
|
|
|
it("vade durumu", () => {
|
|
const today = "2026-11-05";
|
|
expect(dueState(100, null, 3, today, addDays)).toBe("none");
|
|
expect(dueState(0, "2026-11-01", 3, today, addDays)).toBe("none");
|
|
expect(dueState(-100, "2026-11-04", 3, today, addDays)).toBe("overdue");
|
|
expect(dueState(100, "2026-11-08", 3, today, addDays)).toBe("upcoming");
|
|
expect(dueState(100, "2026-11-09", 3, today, addDays)).toBe("none");
|
|
expect(dueState(100, "2026-11-05", 0, today, addDays)).toBe("upcoming");
|
|
});
|
|
});
|