Commit Graph
15 Commits
Author SHA1 Message Date
mostalive 4e0aea732a Add payment state to Order with guarded Pay transition
- Order records payments: Payments, AmountPaid, Outstanding,
  IsFullyPaid (parameterless, replaces IsFullyPaid(expectedTotal))
- Pay rejects open orders, non-positive amounts, and overpayments
- 4 new OrderCompletion tests assert observable state:
  PaymentOnOpenOrder_Throws_OrderStillUnpaid,
  CompletedOrder_PartialPayment_IsNotFullyPaid,
  CompletedOrder_PaymentsSummingToTotal_IsFullyPaid,
  Overpayment_Throws_AmountPaidUnchanged
- 11 tests green (6 OrderTotal + 5 OrderCompletion)
2026-10-01 13:46:10 +01:00
mostalive 5dd7a9ef2c Add top-level README describing the three language tracks 2026-10-01 13:44:26 +01:00
mostalive 0749062ce1 Port Round 2 to Python (OrderBook): 14 tests total green, START state preserved 2026-10-01 13:43:59 +01:00
mostalive 974053625d Port Round 1 to Python (OrderDomain): 7 tests green, START state preserved 2026-10-01 13:42:21 +01:00
mostalive 2831b8c3f9 Port Round 2 to Java (OrderBook): 14 tests total green, START state preserved 2026-10-01 13:38:42 +01:00
mostalive f927998149 Ignore pi session storage 2026-10-01 13:35:33 +01:00
mostalive 8841912bdc Add uv.lock from workspace-local uv sync 2026-10-01 13:35:33 +01:00
mostalive 83e1c79ab7 Port Round 1 to Java (OrderDomain): 7 tests green, START state preserved 2026-10-01 13:35:33 +01:00
mostalive d9f78162e7 Redirect Maven/uv caches into workspace (sandbox-safe mise env) 2026-10-01 12:47:45 +01:00
mostalive 035ccb5e27 Ignore Java/Python build artifacts and yak tracker 2026-10-01 12:41:40 +01:00
mostalive e41dcaf4fe Add Python scaffold (uv project with pytest, mise toolchain) 2026-10-01 12:41:40 +01:00
mostalive bd94df4439 Add Java scaffold (Maven multi-module, JUnit 5 + AssertJ, mise toolchain) 2026-10-01 12:41:40 +01:00
mostalive fb3a593e90 Add Has.OrderState custom matcher, refactor DiscountOnFirstLine_TotalAndLineValues as example 2026-10-01 11:38:06 +01:00
mostalive 98f649f46b Refactor CompletedOrder_TotalIsCorrect to express intent with IsFullyPaid() 2026-10-01 11:38:06 +01:00
mostalive 9f7d4e6a4f Add Order and OrderBook domains with test suites 2026-10-01 11:38:06 +01:00