Skip to content

Commit 5a8ff8a

Browse files
committed
adding display tests, now that we are in the helper classes we need to test without mocks
1 parent a9c7827 commit 5a8ff8a

14 files changed

+103
-8
lines changed

bin/machine/Display.class

204 Bytes
Binary file not shown.

bin/machine/DisplayTest.class

1014 Bytes
Binary file not shown.

bin/machine/ItemHandler.class

346 Bytes
Binary file not shown.

bin/machine/Machine.class

1.51 KB
Binary file not shown.

bin/machine/MachineDisplay.class

758 Bytes
Binary file not shown.

bin/machine/MoneyHandler.class

450 Bytes
Binary file not shown.

bin/machine/VendingTest.class

1.82 KB
Binary file not shown.

src/Machine/Display.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1-
package Machine;
1+
package machine;
22

33
public interface Display {
4-
public void show(String string);
4+
public String show(String message);
5+
6+
public String showChange(double change);
57
}

src/Machine/ItemHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package Machine;
1+
package machine;
22

33
public class ItemHandler {
44

src/Machine/Machine.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package Machine;
1+
package machine;
22

33
public class Machine {
44

src/Machine/MachineDisplay.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,13 @@
1-
package Machine;
1+
package machine;
22

33
public class MachineDisplay implements Display {
44

5-
public void show(String string) {
6-
// TODO Auto-generated method stub
5+
public String show(String message) {
6+
return message;
7+
}
78

9+
public String showChange(double change) {
10+
return "Change: $" + change;
811
}
912

1013
}

src/Machine/MoneyHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package Machine;
1+
package machine;
22

33
public class MoneyHandler {
44

test/machine/DisplayTest.java

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
package machine;
2+
3+
import static org.junit.Assert.assertEquals;
4+
5+
import org.junit.Before;
6+
import org.junit.Test;
7+
8+
public class DisplayTest {
9+
10+
private Display display;
11+
12+
@Before
13+
public void setup() {
14+
display = new MachineDisplay();
15+
}
16+
17+
@Test
18+
public void shouldDisplayMessagePassedToIt() {
19+
assertEquals("Message Sent", display.show("Message Sent"));
20+
}
21+
22+
@Test
23+
public void shouldShowChangeMessage() {
24+
assertEquals("Change: $0.75", display.showChange(.75));
25+
}
26+
27+
}

test/machine/VendingTest.java

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
package machine;
2+
import machine.Display;
3+
import machine.ItemHandler;
4+
import machine.Machine;
5+
import machine.MoneyHandler;
6+
7+
import org.junit.Before;
8+
import org.junit.Ignore;
9+
import org.junit.Test;
10+
import org.mockito.InjectMocks;
11+
import org.mockito.Mock;
12+
13+
import static org.mockito.Mockito.*;
14+
15+
import org.mockito.MockitoAnnotations;
16+
17+
18+
public class VendingTest {
19+
@InjectMocks
20+
private Machine machine;
21+
22+
@Mock
23+
Display display;
24+
25+
@Mock
26+
MoneyHandler moneyHandler;
27+
28+
@Mock
29+
ItemHandler itemHandler;
30+
31+
@Before
32+
public void setup() {
33+
MockitoAnnotations.initMocks(this);
34+
}
35+
36+
@Test
37+
public void shouldAcceptCertainAmountOfMoney() {
38+
double amount = 1.00;
39+
machine.receivedMoney(amount);
40+
verify(moneyHandler).receiveMoney(amount);
41+
verify(display).show("money 1.0 inserted.");
42+
}
43+
44+
@Test
45+
public void shouldDispenseItem() {
46+
machine.dispenseItem();
47+
verify(itemHandler).dispenseItem();
48+
verify(display).show("Item dispensing...");
49+
}
50+
51+
@Test
52+
public void shouldChangeMoney() {
53+
machine.changeMoney();
54+
verify(moneyHandler).changeMoney();
55+
verify(display).show("Please take your change.");
56+
}
57+
58+
@Ignore
59+
@Test
60+
public void shouldAllowCustomerToBuyItem() {
61+
}
62+
63+
}

0 commit comments

Comments
 (0)