4
4
5
5
import org .junit .jupiter .api .DisplayName ;
6
6
import org .junit .jupiter .api .Test ;
7
+ import org .junit .jupiter .params .ParameterizedTest ;
8
+ import org .junit .jupiter .params .provider .CsvSource ;
7
9
8
10
class ListTest {
9
11
@@ -14,31 +16,35 @@ class ListTest {
14
16
assertThat (list ).isNotNull ();
15
17
}
16
18
17
- @ Test
18
- void 데이터_5개_저장 () {
19
+ @ ParameterizedTest
20
+ @ CsvSource ({"11,11,22,22,33" })
21
+ void 데이터_5개_저장 (int firstElem , int secondElem , int thirdElem , int fourthElem , int fifthElem ) {
19
22
List <Integer > list = new ArrayList <>();
20
- list .insert (11 );
21
- list .insert (11 );
22
- list .insert (22 );
23
- list .insert (22 );
24
- list .insert (33 );
25
-
26
- assertThat (list .size ()).isEqualTo (5 );
27
- assertThat (list .get (0 )).isEqualTo (11 );
28
- assertThat (list .get (1 )).isEqualTo (11 );
29
- assertThat (list .get (2 )).isEqualTo (22 );
30
- assertThat (list .get (3 )).isEqualTo (22 );
31
- assertThat (list .get (4 )).isEqualTo (33 );
23
+ list .insert (firstElem );
24
+ list .insert (secondElem );
25
+ list .insert (thirdElem );
26
+ list .insert (fourthElem );
27
+ list .insert (fifthElem );
28
+
29
+ int expectedSize = 5 ;
30
+ assertThat (list .size ()).isEqualTo (expectedSize );
31
+ assertThat (list .get (0 )).isEqualTo (firstElem );
32
+ assertThat (list .get (1 )).isEqualTo (secondElem );
33
+ assertThat (list .get (2 )).isEqualTo (thirdElem );
34
+ assertThat (list .get (3 )).isEqualTo (fourthElem );
35
+ assertThat (list .get (4 )).isEqualTo (fifthElem );
32
36
}
33
37
34
- @ Test
35
- void 데이터_5개_저장_후_22인_데이터_모두_삭제 () {
38
+ @ ParameterizedTest
39
+ @ CsvSource ({"11,11,22,22,33" })
40
+ void 데이터_5개_저장_후_22인_데이터_모두_삭제 (int firstElem , int secondElem , int thirdElem , int fourthElem ,
41
+ int fifthElem ) {
36
42
List <Integer > list = new ArrayList <>();
37
- list .insert (11 );
38
- list .insert (11 );
39
- list .insert (22 );
40
- list .insert (22 );
41
- list .insert (33 );
43
+ list .insert (firstElem );
44
+ list .insert (secondElem );
45
+ list .insert (thirdElem );
46
+ list .insert (fourthElem );
47
+ list .insert (fifthElem );
42
48
43
49
// Iterable을 구현하면 enhanced for loop를 사용할 수 있습니다.
44
50
for (int i = 0 ; i < list .size (); i ++) {
@@ -48,10 +54,11 @@ class ListTest {
48
54
}
49
55
}
50
56
51
- assertThat (list .size ()).isEqualTo (3 );
52
- assertThat (list .get (0 )).isEqualTo (11 );
53
- assertThat (list .get (1 )).isEqualTo (11 );
54
- assertThat (list .get (2 )).isEqualTo (33 );
57
+ int expectedSize = 3 ;
58
+ assertThat (list .size ()).isEqualTo (expectedSize );
59
+ assertThat (list .get (0 )).isEqualTo (firstElem );
60
+ assertThat (list .get (1 )).isEqualTo (secondElem );
61
+ assertThat (list .get (2 )).isEqualTo (fifthElem );
55
62
}
56
63
57
64
@ Test
@@ -61,32 +68,37 @@ class ListTest {
61
68
assertThat (list ).isNotNull ();
62
69
}
63
70
64
- @ Test
65
- void CircularLinkedList에_데이터_5개_저장 () {
71
+ @ ParameterizedTest
72
+ @ CsvSource ({"11,11,22,22,33" })
73
+ void CircularLinkedList에_데이터_5개_저장 (int firstElem , int secondElem , int thirdElem , int fourthElem ,
74
+ int fifthElem ) {
66
75
List <Integer > list = new CircularLinkedList <>();
67
- list .insert (11 );
68
- list .insert (11 );
69
- list .insert (22 );
70
- list .insert (22 );
71
- list .insert (33 );
72
-
73
- assertThat (list .size ()).isEqualTo (5 );
74
- assertThat (list .get (0 )).isEqualTo (11 );
75
- assertThat (list .get (1 )).isEqualTo (11 );
76
- assertThat (list .get (2 )).isEqualTo (22 );
77
- assertThat (list .get (3 )).isEqualTo (22 );
78
- assertThat (list .get (4 )).isEqualTo (33 );
79
- assertThat (list .get (5 )).isEqualTo (11 );
76
+ list .insert (firstElem );
77
+ list .insert (secondElem );
78
+ list .insert (thirdElem );
79
+ list .insert (fourthElem );
80
+ list .insert (fifthElem );
81
+
82
+ int expectedSize = 5 ;
83
+ assertThat (list .size ()).isEqualTo (expectedSize );
84
+ assertThat (list .get (0 )).isEqualTo (firstElem );
85
+ assertThat (list .get (1 )).isEqualTo (secondElem );
86
+ assertThat (list .get (2 )).isEqualTo (thirdElem );
87
+ assertThat (list .get (3 )).isEqualTo (fourthElem );
88
+ assertThat (list .get (4 )).isEqualTo (fifthElem );
89
+ assertThat (list .get (5 )).isEqualTo (firstElem );
80
90
}
81
91
82
- @ Test
83
- void CircularLinkedList에_데이터_5개_저장_후_22인_데이터_모두_삭제 () {
92
+ @ ParameterizedTest
93
+ @ CsvSource ({"11,11,22,22,33" })
94
+ void CircularLinkedList에_데이터_5개_저장_후_22인_데이터_모두_삭제 (int firstElem , int secondElem , int thirdElem ,
95
+ int fourthElem , int fifthElem ) {
84
96
List <Integer > list = new CircularLinkedList <>();
85
- list .insert (11 );
86
- list .insert (11 );
87
- list .insert (22 );
88
- list .insert (22 );
89
- list .insert (33 );
97
+ list .insert (firstElem );
98
+ list .insert (secondElem );
99
+ list .insert (thirdElem );
100
+ list .insert (fourthElem );
101
+ list .insert (fifthElem );
90
102
91
103
// Iterable을 구현하면 enhanced for loop를 사용할 수 있습니다.
92
104
for (int i = 0 ; i < list .size (); i ++) {
@@ -96,11 +108,12 @@ class ListTest {
96
108
}
97
109
}
98
110
99
- assertThat (list .size ()).isEqualTo (3 );
100
- assertThat (list .get (0 )).isEqualTo (11 );
101
- assertThat (list .get (1 )).isEqualTo (11 );
102
- assertThat (list .get (2 )).isEqualTo (33 );
103
- assertThat (list .get (3 )).isEqualTo (11 );
111
+ int expectedSize = 3 ;
112
+ assertThat (list .size ()).isEqualTo (expectedSize );
113
+ assertThat (list .get (0 )).isEqualTo (firstElem );
114
+ assertThat (list .get (1 )).isEqualTo (secondElem );
115
+ assertThat (list .get (2 )).isEqualTo (fifthElem );
116
+ assertThat (list .get (3 )).isEqualTo (firstElem );
104
117
}
105
118
106
119
@ Test
@@ -137,45 +150,49 @@ class ListTest {
137
150
assertThat (list ).isNotNull ();
138
151
}
139
152
140
- @ Test
153
+ @ ParameterizedTest
154
+ @ CsvSource ({"11,22,33" })
141
155
@ DisplayName ("DoublyLinkedList 데이터 3개 저장 테스트" )
142
- void DoublyLinkedList_데이터_3개_저장_테스트 () {
156
+ void DoublyLinkedList_데이터_3개_저장_테스트 (int firstElem , int secondElem , int thirdElem ) {
143
157
List <Integer > list = new DoublyLinkedList <>();
158
+ list .insert (firstElem );
159
+ list .insert (secondElem );
160
+ list .insert (thirdElem );
144
161
145
- list .insert (11 );
146
- list .insert (22 );
147
- list .insert (33 );
148
-
162
+ int expectedSize = 3 ;
163
+ int notContainsElem = 44 ;
149
164
assertThat (list .isEmpty ()).isFalse ();
150
- assertThat (list .size ()).isEqualTo (3 );
151
- assertThat (list .contains (11 )).isTrue ();
152
- assertThat (list .contains (22 )).isTrue ();
153
- assertThat (list .contains (33 )).isTrue ();
154
- assertThat (list .contains (44 )).isFalse ();
155
- assertThat (list .get (0 )).isEqualTo (33 );
156
- assertThat (list .get (1 )).isEqualTo (22 );
157
- assertThat (list .get (2 )).isEqualTo (11 );
165
+ assertThat (list .size ()).isEqualTo (expectedSize );
166
+ assertThat (list .contains (firstElem )).isTrue ();
167
+ assertThat (list .contains (secondElem )).isTrue ();
168
+ assertThat (list .contains (thirdElem )).isTrue ();
169
+ assertThat (list .contains (notContainsElem )).isFalse ();
170
+ assertThat (list .get (0 )).isEqualTo (thirdElem );
171
+ assertThat (list .get (1 )).isEqualTo (secondElem );
172
+ assertThat (list .get (2 )).isEqualTo (firstElem );
158
173
}
159
174
160
- @ Test
175
+ @ ParameterizedTest
176
+ @ CsvSource ({"11,22,33" })
161
177
@ DisplayName ("DoublyLinkedList 데이터 3개 저장 후 삭제 테스트" )
162
- void DoublyLinkedList_데이터_3개_저장_후_삭제_테스트 () {
178
+ void DoublyLinkedList_데이터_3개_저장_후_삭제_테스트 (int firstElem , int secondElem , int thirdElem ) {
163
179
List <Integer > list = new DoublyLinkedList <>();
164
-
165
- list .insert (11 );
166
- list .insert (22 );
167
- list .insert (33 );
180
+ list .insert (firstElem );
181
+ list .insert (secondElem );
182
+ list .insert (thirdElem );
168
183
169
184
list .remove (2 );
170
185
list .remove (1 );
171
186
187
+ int expectedSize = 1 ;
188
+ int notContainsElem = 44 ;
172
189
assertThat (list .isEmpty ()).isFalse ();
173
- assertThat (list .size ()).isEqualTo (1 );
174
- assertThat (list .contains (11 )).isFalse ();
175
- assertThat (list .contains (22 )).isFalse ();
176
- assertThat (list .contains (33 )).isTrue ();
177
- assertThat (list .contains (44 )).isFalse ();
178
- assertThat (list .get (0 )).isEqualTo (33 );
190
+ assertThat (list .size ()).isEqualTo (expectedSize );
191
+ assertThat (list .contains (firstElem )).isFalse ();
192
+ assertThat (list .contains (secondElem )).isFalse ();
193
+ assertThat (list .contains (thirdElem )).isTrue ();
194
+ assertThat (list .contains (notContainsElem )).isFalse ();
195
+ assertThat (list .get (0 )).isEqualTo (thirdElem );
179
196
}
180
197
181
198
@ Test
@@ -212,45 +229,49 @@ class ListTest {
212
229
assertThat (list ).isNotNull ();
213
230
}
214
231
215
- @ Test
232
+ @ ParameterizedTest
233
+ @ CsvSource ({"11,22,33" })
216
234
@ DisplayName ("DummyDoublyLinkedList 데이터 3개 저장 테스트" )
217
- void DummyDoublyLinkedList_데이터_3개_저장_테스트 () {
235
+ void DummyDoublyLinkedList_데이터_3개_저장_테스트 (int firstElem , int secondElem , int thirdElem ) {
218
236
List <Integer > list = new DummyDoublyLinkedList <>();
237
+ list .insert (firstElem );
238
+ list .insert (secondElem );
239
+ list .insert (thirdElem );
219
240
220
- list .insert (11 );
221
- list .insert (22 );
222
- list .insert (33 );
223
-
241
+ int expectedSize = 3 ;
242
+ int notContainsElem = 44 ;
224
243
assertThat (list .isEmpty ()).isFalse ();
225
- assertThat (list .size ()).isEqualTo (3 );
226
- assertThat (list .contains (11 )).isTrue ();
227
- assertThat (list .contains (22 )).isTrue ();
228
- assertThat (list .contains (33 )).isTrue ();
229
- assertThat (list .contains (44 )).isFalse ();
230
- assertThat (list .get (0 )).isEqualTo (11 );
231
- assertThat (list .get (1 )).isEqualTo (22 );
232
- assertThat (list .get (2 )).isEqualTo (33 );
244
+ assertThat (list .size ()).isEqualTo (expectedSize );
245
+ assertThat (list .contains (firstElem )).isTrue ();
246
+ assertThat (list .contains (secondElem )).isTrue ();
247
+ assertThat (list .contains (thirdElem )).isTrue ();
248
+ assertThat (list .contains (notContainsElem )).isFalse ();
249
+ assertThat (list .get (0 )).isEqualTo (firstElem );
250
+ assertThat (list .get (1 )).isEqualTo (secondElem );
251
+ assertThat (list .get (2 )).isEqualTo (thirdElem );
233
252
}
234
253
235
- @ Test
254
+ @ ParameterizedTest
255
+ @ CsvSource ({"11,22,33" })
236
256
@ DisplayName ("DummyDoublyLinkedList 데이터 3개 저장 후 삭제 테스트" )
237
- void DummyDoublyLinkedList_데이터_3개_저장_후_삭제_테스트 () {
257
+ void DummyDoublyLinkedList_데이터_3개_저장_후_삭제_테스트 (int firstElem , int secondElem , int thirdElem ) {
238
258
List <Integer > list = new DummyDoublyLinkedList <>();
239
-
240
- list .insert (11 );
241
- list .insert (22 );
242
- list .insert (33 );
259
+ list .insert (firstElem );
260
+ list .insert (secondElem );
261
+ list .insert (thirdElem );
243
262
244
263
list .remove (2 );
245
264
list .remove (1 );
246
265
266
+ int expectedSize = 1 ;
267
+ int notContainsElem = 44 ;
247
268
assertThat (list .isEmpty ()).isFalse ();
248
- assertThat (list .size ()).isEqualTo (1 );
249
- assertThat (list .contains (11 )).isTrue ();
250
- assertThat (list .contains (22 )).isFalse ();
251
- assertThat (list .contains (33 )).isFalse ();
252
- assertThat (list .contains (44 )).isFalse ();
253
- assertThat (list .get (0 )).isEqualTo (11 );
269
+ assertThat (list .size ()).isEqualTo (expectedSize );
270
+ assertThat (list .contains (firstElem )).isTrue ();
271
+ assertThat (list .contains (secondElem )).isFalse ();
272
+ assertThat (list .contains (thirdElem )).isFalse ();
273
+ assertThat (list .contains (notContainsElem )).isFalse ();
274
+ assertThat (list .get (0 )).isEqualTo (firstElem );
254
275
}
255
276
256
277
@ Test
0 commit comments