tdd-java-demo

tdd java demo with micro-commits

git clone https://9o.is/git/tdd-java-demo.git

commit 64e244c015e76eeaa95331c23900c3c6bd121069
parent f919f4f88dcb0ca11b25fc4f5e6105a5db59320f
Author: Jul <jul@9o.is>
Date:   Thu,  1 Apr 2021 02:07:23 +0800

move code to PurchaseDayView

Diffstat:
Msrc/main/java/takehome/PurchaseDayView.java | 16++++++++++++++++
Msrc/main/java/takehome/Runner.java | 8++------
2 files changed, 18 insertions(+), 6 deletions(-)

diff --git a/src/main/java/takehome/PurchaseDayView.java b/src/main/java/takehome/PurchaseDayView.java @@ -1,10 +1,26 @@ package takehome; import java.io.PrintStream; +import java.time.LocalDate; import java.util.Scanner; public class PurchaseDayView { + private final Scanner in; + private final PrintStream out; + public PurchaseDayView(Scanner in, PrintStream out) { + this.in = in; + this.out = out; + } + + public Basket apply(Basket basket) { + LocalDate date = LocalDate.now().plusDays(getPurchaseDay()); + basket.setPurchaseDate(date); + return basket; + } + private int getPurchaseDay() { + out.println("Purchase day (0 for today, 1 for tomorrow, etc): "); + return in.nextInt(); } } diff --git a/src/main/java/takehome/Runner.java b/src/main/java/takehome/Runner.java @@ -29,16 +29,12 @@ public class Runner { Basket basket = createBasketView.apply(items); PurchaseDayView purchaseDayView = new PurchaseDayView(in, out); + basket = purchaseDayView.apply(basket); - basket.setPurchaseDate(LocalDate.now().plusDays(getPurchaseDay())); double total = basket.getTotal(discounts); - DecimalFormat df = new DecimalFormat("0.00"); out.println("Total: $" + df.format(total)); } - private int getPurchaseDay() { - out.println("Purchase day (0 for today, 1 for tomorrow, etc): "); - return in.nextInt(); - } + }