Przeglądaj źródła

binary-search-tree: use generics

Frida Tveit 9 lat temu
rodzic
commit
74bf896f96

+ 36
- 30
exercises/binary-search-tree/src/test/java/BinarySearchTreeTest.java Wyświetl plik

9
 import org.junit.Before;
9
 import org.junit.Before;
10
 
10
 
11
 public class BinarySearchTreeTest {
11
 public class BinarySearchTreeTest {
12
-    private BinarySearchTree<Integer> binarySearchTree;
13
-
14
-    @Before
15
-    public void setUp() {
16
-        binarySearchTree = new BinarySearchTree<>();
17
-    }
18
 
12
 
19
     @Test
13
     @Test
20
     public void dataIsRetained() {
14
     public void dataIsRetained() {
21
-        final int actual = 4;
22
-        binarySearchTree.insert(actual);
15
+        BinarySearchTree<Integer> binarySearchTree = new BinarySearchTree<>();
16
+
17
+        final int expected = 4;
18
+        binarySearchTree.insert(expected);
19
+
23
         final BinarySearchTree.Node<Integer> root = binarySearchTree.getRoot();
20
         final BinarySearchTree.Node<Integer> root = binarySearchTree.getRoot();
24
         assertNotNull(root);
21
         assertNotNull(root);
25
-        final int expected = root.getData();
22
+
23
+        final int actual = root.getData();
26
         assertEquals(expected, actual);
24
         assertEquals(expected, actual);
27
     }
25
     }
28
 
26
 
29
     @Ignore("Remove to run test")
27
     @Ignore("Remove to run test")
30
     @Test
28
     @Test
31
     public void insertsLess() {
29
     public void insertsLess() {
32
-        final int expectedRoot = 4;
33
-        final int expectedLeft = 2;
30
+        BinarySearchTree<Character> binarySearchTree = new BinarySearchTree<>();
31
+        final char expectedRoot = '4';
32
+        final char expectedLeft = '2';
34
 
33
 
35
         binarySearchTree.insert(expectedRoot);
34
         binarySearchTree.insert(expectedRoot);
36
         binarySearchTree.insert(expectedLeft);
35
         binarySearchTree.insert(expectedLeft);
37
 
36
 
38
-        final BinarySearchTree.Node<Integer> root = binarySearchTree.getRoot();
37
+        final BinarySearchTree.Node<Character> root = binarySearchTree.getRoot();
39
         assertNotNull(root);
38
         assertNotNull(root);
40
-        final BinarySearchTree.Node<Integer> left = root.getLeft();
39
+        final BinarySearchTree.Node<Character> left = root.getLeft();
41
         assertNotNull(left);
40
         assertNotNull(left);
42
 
41
 
43
-        final int actualRoot = root.getData();
44
-        final int actualLeft = left.getData();
42
+        final char actualRoot = root.getData();
43
+        final char actualLeft = left.getData();
45
         assertEquals(expectedLeft, actualLeft);
44
         assertEquals(expectedLeft, actualLeft);
46
         assertEquals(expectedRoot, actualRoot);
45
         assertEquals(expectedRoot, actualRoot);
47
     }
46
     }
49
     @Ignore("Remove to run test")
48
     @Ignore("Remove to run test")
50
     @Test
49
     @Test
51
     public void insertsSame() {
50
     public void insertsSame() {
52
-        final int expectedRoot = 4;
53
-        final int expectedLeft = 4;
51
+        BinarySearchTree<String> binarySearchTree = new BinarySearchTree<>();
52
+        final String expectedRoot = "4";
53
+        final String expectedLeft = "4";
54
 
54
 
55
         binarySearchTree.insert(expectedRoot);
55
         binarySearchTree.insert(expectedRoot);
56
         binarySearchTree.insert(expectedLeft);
56
         binarySearchTree.insert(expectedLeft);
57
 
57
 
58
-        final BinarySearchTree.Node<Integer> root = binarySearchTree.getRoot();
58
+        final BinarySearchTree.Node<String> root = binarySearchTree.getRoot();
59
         assertNotNull(root);
59
         assertNotNull(root);
60
-        final BinarySearchTree.Node<Integer> left = root.getLeft();
60
+        final BinarySearchTree.Node<String> left = root.getLeft();
61
         assertNotNull(left);
61
         assertNotNull(left);
62
 
62
 
63
-        final int actualRoot = root.getData();
64
-        final int actualLeft = left.getData();
63
+        final String actualRoot = root.getData();
64
+        final String actualLeft = left.getData();
65
         assertEquals(expectedLeft, actualLeft);
65
         assertEquals(expectedLeft, actualLeft);
66
         assertEquals(expectedRoot, actualRoot);
66
         assertEquals(expectedRoot, actualRoot);
67
     }
67
     }
69
     @Ignore("Remove to run test")
69
     @Ignore("Remove to run test")
70
     @Test
70
     @Test
71
     public void insertsRight() {
71
     public void insertsRight() {
72
+        BinarySearchTree<Integer> binarySearchTree = new BinarySearchTree<>();
72
         final int expectedRoot = 4;
73
         final int expectedRoot = 4;
73
         final int expectedRight = 5;
74
         final int expectedRight = 5;
74
 
75
 
89
     @Ignore("Remove to run test")
90
     @Ignore("Remove to run test")
90
     @Test
91
     @Test
91
     public void createsComplexTree() {
92
     public void createsComplexTree() {
93
+        BinarySearchTree<Integer> binarySearchTree = new BinarySearchTree<>();
92
         List<Integer> expected = Collections.unmodifiableList(
94
         List<Integer> expected = Collections.unmodifiableList(
93
                 Arrays.asList(4, 2, 6, 1, 3, 5, 7)
95
                 Arrays.asList(4, 2, 6, 1, 3, 5, 7)
94
         );
96
         );
105
     @Ignore("Remove to run test")
107
     @Ignore("Remove to run test")
106
     @Test
108
     @Test
107
     public void sortsSingleElement() {
109
     public void sortsSingleElement() {
108
-        List<Integer> expected = Collections.unmodifiableList(
109
-                Collections.singletonList(4)
110
+        BinarySearchTree<Character> binarySearchTree = new BinarySearchTree<>();
111
+        List<Character> expected = Collections.unmodifiableList(
112
+                Collections.singletonList('4')
110
         );
113
         );
111
 
114
 
112
-        binarySearchTree.insert(4);
115
+        binarySearchTree.insert('4');
113
 
116
 
114
-        List<Integer> actual = binarySearchTree.getAsSortedList();
117
+        List<Character> actual = binarySearchTree.getAsSortedList();
115
         assertEquals(expected, actual);
118
         assertEquals(expected, actual);
116
     }
119
     }
117
 
120
 
118
     @Ignore("Remove to run test")
121
     @Ignore("Remove to run test")
119
     @Test
122
     @Test
120
     public void sortsCollectionOfTwoIfSecondInsertedIsSmallerThanFirst() {
123
     public void sortsCollectionOfTwoIfSecondInsertedIsSmallerThanFirst() {
121
-        List<Integer> expected = Collections.unmodifiableList(
122
-                Arrays.asList(2, 4)
124
+        BinarySearchTree<String> binarySearchTree = new BinarySearchTree<>();
125
+        List<String> expected = Collections.unmodifiableList(
126
+                Arrays.asList("2", "4")
123
         );
127
         );
124
 
128
 
125
-        binarySearchTree.insert(4);
126
-        binarySearchTree.insert(2);
129
+        binarySearchTree.insert("4");
130
+        binarySearchTree.insert("2");
127
 
131
 
128
-        List<Integer> actual = binarySearchTree.getAsSortedList();
132
+        List<String> actual = binarySearchTree.getAsSortedList();
129
         assertEquals(expected, actual);
133
         assertEquals(expected, actual);
130
     }
134
     }
131
 
135
 
132
     @Ignore("Remove to run test")
136
     @Ignore("Remove to run test")
133
     @Test
137
     @Test
134
     public void sortsCollectionOfTwoIfSecondInsertedIsBiggerThanFirst() {
138
     public void sortsCollectionOfTwoIfSecondInsertedIsBiggerThanFirst() {
139
+        BinarySearchTree<Integer> binarySearchTree = new BinarySearchTree<>();
135
         List<Integer> expected = Collections.unmodifiableList(
140
         List<Integer> expected = Collections.unmodifiableList(
136
                 Arrays.asList(4, 5)
141
                 Arrays.asList(4, 5)
137
         );
142
         );
146
     @Ignore("Remove to run test")
151
     @Ignore("Remove to run test")
147
     @Test
152
     @Test
148
     public void iteratesOverComplexTree() {
153
     public void iteratesOverComplexTree() {
154
+        BinarySearchTree<Integer> binarySearchTree = new BinarySearchTree<>();
149
         List<Integer> expected = Collections.unmodifiableList(
155
         List<Integer> expected = Collections.unmodifiableList(
150
                 Arrays.asList(1, 2, 3, 4, 5, 6, 7)
156
                 Arrays.asList(1, 2, 3, 4, 5, 6, 7)
151
         );
157
         );