Pārlūkot izejas kodu

change: update to v1.1.0 tests

Stuart Kent 9 gadus atpakaļ
vecāks
revīzija
4afb0b1340

+ 27
- 2
exercises/change/src/test/java/ChangeCalculatorTest.java Parādīt failu

@@ -8,6 +8,9 @@ import static java.util.Collections.emptyList;
8 8
 import static java.util.Collections.singletonList;
9 9
 import static org.junit.Assert.assertEquals;
10 10
 
11
+/*
12
+ * version: 1.1.0
13
+ */
11 14
 public class ChangeCalculatorTest {
12 15
 
13 16
     @Rule
@@ -35,7 +38,7 @@ public class ChangeCalculatorTest {
35 38
     @Ignore("Remove to run test")
36 39
     @Test
37 40
     // https://en.wikipedia.org/wiki/Change-making_problem#Greedy_method
38
-    public void testLilliputianCurrencyForWhichGreedyAlgorithmFails() {
41
+    public void testLilliputianCurrency() {
39 42
         ChangeCalculator changeCalculator = new ChangeCalculator(asList(1, 4, 15, 20, 50));
40 43
 
41 44
         assertEquals(
@@ -46,7 +49,7 @@ public class ChangeCalculatorTest {
46 49
     @Ignore("Remove to run test")
47 50
     @Test
48 51
     // https://en.wikipedia.org/wiki/Change-making_problem#Greedy_method
49
-    public void testLowerElbonianCurrencyForWhichGreedyAlgorithmFails() {
52
+    public void testLowerElbonianCurrency() {
50 53
         ChangeCalculator changeCalculator = new ChangeCalculator(asList(1, 5, 10, 21, 25));
51 54
 
52 55
         assertEquals(
@@ -66,6 +69,28 @@ public class ChangeCalculatorTest {
66 69
 
67 70
     @Ignore("Remove to run test")
68 71
     @Test
72
+    // https://en.wikipedia.org/wiki/Change-making_problem#Greedy_method
73
+    public void testPossibleChangeWithoutUnitCoinAvailable() {
74
+        ChangeCalculator changeCalculator = new ChangeCalculator(asList(2, 5, 10, 20, 50));
75
+
76
+        assertEquals(
77
+                asList(2, 2, 2, 5, 10),
78
+                changeCalculator.computeMostEfficientChange(21));
79
+    }
80
+
81
+    @Ignore("Remove to run test")
82
+    @Test
83
+    // https://en.wikipedia.org/wiki/Change-making_problem#Greedy_method
84
+    public void testAnotherPossibleChangeWithoutUnitCoinAvailable() {
85
+        ChangeCalculator changeCalculator = new ChangeCalculator(asList(4, 5));
86
+
87
+        assertEquals(
88
+                asList(4, 4, 4, 5, 5, 5),
89
+                changeCalculator.computeMostEfficientChange(27));
90
+    }
91
+
92
+    @Ignore("Remove to run test")
93
+    @Test
69 94
     public void testZeroChange() {
70 95
         ChangeCalculator changeCalculator = new ChangeCalculator(asList(1, 5, 10, 21, 25));
71 96