from settlement import settle_order

CASES = [
    ({"items": [{"name": "x", "price": 1.11, "qty": 1}] * 3, "discount_rate": 0.85}, 2.83),
    ({"items": [{"name": "y", "price": 100.0, "qty": 1}], "discount_rate": 0.9, "coupon_min_spend": 95.0, "coupon_off": 10.0}, 90.0),
    ({"items": [{"name": "z", "price": 120.0, "qty": 1}], "discount_rate": 0.9, "coupon_min_spend": 95.0, "coupon_off": 10.0}, 98.0),
]

for i, (kwargs, expected) in enumerate(CASES, 1):
    got = settle_order(**kwargs)
    assert got == expected, f"Ledger case {i} failed: expected {expected}, got {got}"

print("LEDGER_OK: All 3 historical orders reconciled.")
