From 98f649f46bf97687fb88a9e110aabcfd95f21550 Mon Sep 17 00:00:00 2001 From: Willem van den Ende Date: Wed, 30 Sep 2026 15:05:09 +0100 Subject: [PATCH] Refactor CompletedOrder_TotalIsCorrect to express intent with IsFullyPaid() --- csharp/src/OrderDomain/Order.cs | 3 +++ csharp/tests/OrderTests/OrderCompletionTests.cs | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/csharp/src/OrderDomain/Order.cs b/csharp/src/OrderDomain/Order.cs index ca509ec..5205729 100644 --- a/csharp/src/OrderDomain/Order.cs +++ b/csharp/src/OrderDomain/Order.cs @@ -15,4 +15,7 @@ public class Order => Lines[lineIndex].ApplyDiscount(); public void Complete() => IsCompleted = true; + + public bool IsFullyPaid(decimal expectedTotal) + => IsCompleted && Total == expectedTotal; } diff --git a/csharp/tests/OrderTests/OrderCompletionTests.cs b/csharp/tests/OrderTests/OrderCompletionTests.cs index 74b6acc..b7547a4 100644 --- a/csharp/tests/OrderTests/OrderCompletionTests.cs +++ b/csharp/tests/OrderTests/OrderCompletionTests.cs @@ -12,6 +12,6 @@ public class OrderCompletionTests order.AddLine(100m, 1); order.Complete(); - Assert.That(order.Total, Is.EqualTo(100m)); + Assert.That(order.IsFullyPaid(100m), Is.True); } }