source: src/main/java/bargainingchips/tests/BundleTest.java@ 337

Last change on this file since 337 was 335, checked in by Faria Nassiri Mofakham, 5 years ago

BundelTest includes tests for adding null bundle or stack to a bundle; it shows that aggregation doesn't return the original bundle.

File size: 2.4 KB
Line 
1package bargainingchips.tests;
2
3import static org.junit.Assert.assertEquals;
4import static org.junit.Assert.assertFalse;
5import static org.junit.Assert.assertTrue;
6
7import org.junit.Test;
8
9import bargainingchips.Chip;
10import bargainingchips.Stack;
11import bargainingchips.Bundle;
12import bargainingchips.BundleBuilder;
13
14
15public class BundleTest
16{
17
18 @Test
19 public void testConstructor()
20 {
21
22 Bundle a = new BundleBuilder()
23 .addStack("White", 4.0, 30)
24 .addStack("Yellow", 6.0, 20)
25 .build();
26
27 Bundle b = new BundleBuilder()
28 .addStack("Red", 1.0, 10)
29 .addStack("Blue", 8.0, 30)
30 .addStack("Orange", 4.0, 30)
31 .addStack("Pink", 8.0, 80)
32 .build();
33
34 assertEquals(a.size(), 2);
35
36 assertEquals(b.size(), 4);
37
38 assertEquals(a.getTotalPrice(), 24.0 , 0.0);
39
40 assertEquals(b.getTotalPrice(), 110.0 , 0.0);
41 }
42
43 @Test
44 public void testAggregationSymmetry()
45 {
46
47 System.out.println("7 Agrregation tests: ");
48
49 Bundle a = new BundleBuilder()
50 .addStack("White", 4.0, 30)
51 .addStack("Yellow", 6.0, 20)
52 .build();
53
54 Bundle b = new BundleBuilder()
55 .addStack("Red", 1.0, 10)
56 .addStack("Blue", 8.0, 30)
57 .addStack("Orange", 4.0, 30)
58 .addStack("Pink", 8.0, 80)
59 .build();
60
61 Bundle aPlusb = a.aggregateWith(b);
62 System.out.println("1. " + a + " + " + b + " = " + aPlusb);
63
64 Bundle bPlusa = b.aggregateWith(a);
65 System.out.println("2. " + b + " + " + a + " = " + bPlusa);
66
67 Stack s = new Stack("Green", 7.0, 5);
68
69 Bundle aPluss = a.aggregateWith(s);
70 System.out.println("3. " + a + " + " + s + " = " + aPluss);
71
72
73 Bundle c = new BundleBuilder()
74 .addStack("Green", 7.0, 5)
75 .addStack("Yellow", 6.0, 20)
76 .build();
77
78 Stack t = new Stack("White", 4.0, 30);
79 Bundle cPlust = c.aggregateWith(t);
80 System.out.println("4. " + c + " + " + t + " = " + cPlust);
81
82 assertEquals(aPluss.getTotalPrice(), cPlust.getTotalPrice());
83
84
85 Stack u = new Stack("Red", 3.0, 20);
86
87 Bundle bPlusu = b.aggregateWith(u);
88 System.out.println("5. " + b + " + " + u + " = " + bPlusu);
89
90
91 Bundle d = null;
92 Bundle aPlusd = a.aggregateWith(d);
93 System.out.println("6. " + a + " + " + d + " = " + aPlusd);
94
95
96
97 Stack v = null;
98
99 Bundle bPlusv = b.aggregateWith(v);
100 System.out.println("7. " + b + " + " + v + " = " + bPlusv);
101
102
103 }
104
105}
Note: See TracBrowser for help on using the repository browser.