tdd-java-demo
tdd java demo with micro-commits
git clone https://9o.is/git/tdd-java-demo.git
Runner.java
(1124B)
1 package takehome;
2
3 import takehome.model.Basket;
4 import takehome.model.Discount;
5 import takehome.model.Item;
6 import takehome.view.CreateBasketView;
7 import takehome.view.PurchaseDayView;
8 import takehome.view.TotalView;
9
10 import java.io.InputStream;
11 import java.io.OutputStream;
12 import java.io.PrintStream;
13 import java.util.Scanner;
14
15 import static takehome.Items.*;
16 import static takehome.Discounts.*;
17
18 public class Runner {
19 private final PrintStream out;
20 private final Scanner in;
21
22 public Runner(InputStream in, OutputStream out) {
23 this.out = new PrintStream(out);
24 this.in = new Scanner(in);
25 }
26
27 public void run() {
28 Item[] items = { SOUP, BREAD, MILK, APPLE };
29 Discount[] discounts = { APPLE_DISCOUNT, BREAD_DISCOUNT };
30
31 CreateBasketView createBasketView = new CreateBasketView(in, out);
32 Basket basket = createBasketView.apply(items);
33
34 PurchaseDayView purchaseDayView = new PurchaseDayView(in, out);
35 basket = purchaseDayView.apply(basket);
36
37 TotalView totalView = new TotalView(out);
38 totalView.apply(basket, discounts);
39 }
40 }