tdd-java-demo
tdd java demo with micro-commits
git clone https://9o.is/git/tdd-java-demo.git
commit b2544d8e8e77d4ab006bff4093d5c466569df03c parent fcaf8ce4967bb5299d68a74d06a37233a93436c7 Author: Jul <jul@9o.is> Date: Wed, 31 Mar 2021 19:21:12 +0800 change Discount internal data structure for items Diffstat:
| M | src/main/java/takehome/Discount.java | | | 21 | +++++++++++++++++---- |
1 file changed, 17 insertions(+), 4 deletions(-)
diff --git a/src/main/java/takehome/Discount.java b/src/main/java/takehome/Discount.java @@ -1,16 +1,21 @@ package takehome; +import java.util.HashMap; +import java.util.Map; +import java.util.NoSuchElementException; + public class Discount { - private final Item item; + private final Map<Item, Integer> items; private final double amount; public Discount(double amount, Item item) { this.amount = amount; - this.item = item; + this.items = new HashMap<>(); + this.items.put(item, 1); } public Item getItem() { - return item; + return getSingleItem(); } public double getAmount() { @@ -18,6 +23,14 @@ public class Discount { } double getDiscount(Basket basket) { - return amount * basket.getAmount(item); + return amount * basket.getAmount(getSingleItem()); + } + + private Item getSingleItem() { + for (Item item : items.keySet()) { + return item; + } + + throw new NoSuchElementException("impossible"); } }