tdd-java-demo

tdd java demo with micro-commits

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

commit 02a5f2ec9c1a0820ed310c2c112fa2f26fb08814
parent fb101bf60f93a8898b1722031918faa7326e8dff
Author: Jul <jul@9o.is>
Date:   Thu,  1 Apr 2021 01:53:32 +0800

move constant variable discounts to Discounts class

Diffstat:
Asrc/main/java/takehome/Discounts.java | 16++++++++++++++++
Msrc/main/java/takehome/Runner.java | 15+++------------
2 files changed, 19 insertions(+), 12 deletions(-)

diff --git a/src/main/java/takehome/Discounts.java b/src/main/java/takehome/Discounts.java @@ -0,0 +1,16 @@ +package takehome; + +import java.time.LocalDate; + +import static takehome.Items.*; + +public final class Discounts { + private static final LocalDate TODAY = LocalDate.now(); + private static final LocalDate YESTERDAY = TODAY.minusDays(1); + private static final LocalDate DAYS_3 = TODAY.plusDays(3); + private static final LocalDate DAYS_7 = TODAY.plusDays(7); + private static final LocalDate MONTHS_2 = TODAY.plusMonths(1); + + public static final Discount APPLE_DISCOUNT = new Discount(0.01, DAYS_3, MONTHS_2, APPLE); + public static final Discount BREAD_DISCOUNT = new Discount(0.40, YESTERDAY, DAYS_7, SOUP, SOUP, BREAD); +} diff --git a/src/main/java/takehome/Runner.java b/src/main/java/takehome/Runner.java @@ -10,14 +10,9 @@ import java.util.Map; import java.util.Scanner; import static takehome.Items.*; +import static takehome.Discounts.*; public class Runner { - private static final LocalDate TODAY = LocalDate.now(); - private static final LocalDate YESTERDAY = TODAY.minusDays(1); - private static final LocalDate DAYS_3 = TODAY.plusDays(3); - private static final LocalDate DAYS_7 = TODAY.plusDays(7); - private static final LocalDate MONTHS_2 = TODAY.plusMonths(1); - private final PrintStream out; private final Scanner in; @@ -28,14 +23,10 @@ public class Runner { public void run() { Item[] items = { SOUP, BREAD, MILK, APPLE }; - - Discount[] discounts = { - new Discount(0.01, DAYS_3, MONTHS_2, APPLE), - new Discount(0.40, YESTERDAY, DAYS_7, SOUP, SOUP, BREAD) - }; + Discount[] discounts = { APPLE_DISCOUNT, BREAD_DISCOUNT }; Basket basket = new Basket(getItemAmounts(items)); - basket.setPurchaseDate(TODAY.plusDays(getPurchaseDay())); + basket.setPurchaseDate(LocalDate.now().plusDays(getPurchaseDay())); double total = basket.getTotal(discounts); DecimalFormat df = new DecimalFormat("0.00");