1- import static org .assertj .core .api .Assertions .assertThatExceptionOfType ;
2- import static org .junit .Assert .assertEquals ;
3- import static java .util .Arrays .asList ;
4- import static java .util .Collections .emptyList ;
5- import static java .util .Collections .singletonList ;
6-
71import org .junit .Ignore ;
82import org .junit .Test ;
93
4+ import static java .util .Arrays .asList ;
5+ import static org .assertj .core .api .Assertions .assertThat ;
6+ import static org .assertj .core .api .Assertions .assertThatExceptionOfType ;
7+
108public class ChangeCalculatorTest {
119
1210 @ Test
1311 public void testChangeThatCanBeGivenInASingleCoin () {
1412 ChangeCalculator changeCalculator = new ChangeCalculator (asList (1 , 5 , 10 , 25 , 100 ));
1513
16- assertEquals (
17- singletonList (25 ),
18- changeCalculator .computeMostEfficientChange (25 ));
14+ assertThat (changeCalculator .computeMostEfficientChange (25 ))
15+ .containsExactly (25 );
1916 }
2017
2118 @ Ignore ("Remove to run test" )
2219 @ Test
2320 public void testChangeThatMustBeGivenInMultipleCoins () {
2421 ChangeCalculator changeCalculator = new ChangeCalculator (asList (1 , 5 , 10 , 25 , 100 ));
2522
26- assertEquals (
27- asList (5 , 10 ),
28- changeCalculator .computeMostEfficientChange (15 ));
23+ assertThat (changeCalculator .computeMostEfficientChange (15 ))
24+ .containsExactly (5 , 10 );
2925 }
3026
3127 @ Ignore ("Remove to run test" )
@@ -34,9 +30,8 @@ public void testChangeThatMustBeGivenInMultipleCoins() {
3430 public void testLilliputianCurrency () {
3531 ChangeCalculator changeCalculator = new ChangeCalculator (asList (1 , 4 , 15 , 20 , 50 ));
3632
37- assertEquals (
38- asList (4 , 4 , 15 ),
39- changeCalculator .computeMostEfficientChange (23 ));
33+ assertThat (changeCalculator .computeMostEfficientChange (23 ))
34+ .containsExactly (4 , 4 , 15 );
4035 }
4136
4237 @ Ignore ("Remove to run test" )
@@ -45,19 +40,17 @@ public void testLilliputianCurrency() {
4540 public void testLowerElbonianCurrency () {
4641 ChangeCalculator changeCalculator = new ChangeCalculator (asList (1 , 5 , 10 , 21 , 25 ));
4742
48- assertEquals (
49- asList (21 , 21 , 21 ),
50- changeCalculator .computeMostEfficientChange (63 ));
43+ assertThat (changeCalculator .computeMostEfficientChange (63 ))
44+ .containsExactly (21 , 21 , 21 );
5145 }
5246
5347 @ Ignore ("Remove to run test" )
5448 @ Test
5549 public void testLargeAmountOfChange () {
5650 ChangeCalculator changeCalculator = new ChangeCalculator (asList (1 , 2 , 5 , 10 , 20 , 50 , 100 ));
5751
58- assertEquals (
59- asList (2 , 2 , 5 , 20 , 20 , 50 , 100 , 100 , 100 , 100 , 100 , 100 , 100 , 100 , 100 ),
60- changeCalculator .computeMostEfficientChange (999 ));
52+ assertThat (changeCalculator .computeMostEfficientChange (999 ))
53+ .containsExactly (2 , 2 , 5 , 20 , 20 , 50 , 100 , 100 , 100 , 100 , 100 , 100 , 100 , 100 , 100 );
6154 }
6255
6356 @ Ignore ("Remove to run test" )
@@ -66,9 +59,8 @@ public void testLargeAmountOfChange() {
6659 public void testPossibleChangeWithoutUnitCoinAvailable () {
6760 ChangeCalculator changeCalculator = new ChangeCalculator (asList (2 , 5 , 10 , 20 , 50 ));
6861
69- assertEquals (
70- asList (2 , 2 , 2 , 5 , 10 ),
71- changeCalculator .computeMostEfficientChange (21 ));
62+ assertThat (changeCalculator .computeMostEfficientChange (21 ))
63+ .containsExactly (2 , 2 , 2 , 5 , 10 );
7264 }
7365
7466 @ Ignore ("Remove to run test" )
@@ -77,19 +69,17 @@ public void testPossibleChangeWithoutUnitCoinAvailable() {
7769 public void testAnotherPossibleChangeWithoutUnitCoinAvailable () {
7870 ChangeCalculator changeCalculator = new ChangeCalculator (asList (4 , 5 ));
7971
80- assertEquals (
81- asList (4 , 4 , 4 , 5 , 5 , 5 ),
82- changeCalculator .computeMostEfficientChange (27 ));
72+ assertThat (changeCalculator .computeMostEfficientChange (27 ))
73+ .containsExactly (4 , 4 , 4 , 5 , 5 , 5 );
8374 }
8475
8576 @ Ignore ("Remove to run test" )
8677 @ Test
8778 public void testZeroChange () {
8879 ChangeCalculator changeCalculator = new ChangeCalculator (asList (1 , 5 , 10 , 21 , 25 ));
8980
90- assertEquals (
91- emptyList (),
92- changeCalculator .computeMostEfficientChange (0 ));
81+ assertThat (changeCalculator .computeMostEfficientChange (0 ))
82+ .isEmpty ();
9383 }
9484
9585 @ Ignore ("Remove to run test" )
0 commit comments