Skip to content

Commit 0fc730a

Browse files
committed
Try fixing tests
1 parent 7ff88ba commit 0fc730a

3 files changed

Lines changed: 82 additions & 5 deletions

File tree

build

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,9 @@ jar --create \
3939
-C "$OUT_DIR" .
4040

4141
# Perguntar ao usuário se deseja executar o teste
42-
read -p "Wants to run tests 'tests/test.sh'? (s/N): " respond
42+
read -p "Wants to run tests 'tests/test.sh'? (y/N): " respond
4343

44-
if [[ "$respond" == "s" || "$respond" == "S" ]]; then
44+
if [[ "$respond" == "y" || "$respond" == "Y" ]]; then
4545

4646
echo "Executing tests..."
4747
bash ./tests/test "$JAR_NAME"

tests/Test.java

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@ public static void main(String[] args) {
2424
}
2525

2626
private static void testList() {
27+
2728
List my_list = new List();
29+
2830
my_list.append("abc");
2931
my_list.append(23);
3032
my_list.append(2.78);
@@ -34,10 +36,13 @@ private static void testList() {
3436
System.out.println(my_list.get(1));
3537
System.out.println(my_list.get(2));
3638
System.out.println(my_list.get(3));
39+
3740
}
3841

3942
private static void testDict() {
43+
4044
Dict my_dict = new Dict();
45+
4146
my_dict.add("key1", "value1");
4247
my_dict.add("key2", 42);
4348
my_dict.add("key3", 3.14);
@@ -47,9 +52,11 @@ private static void testDict() {
4752
System.out.println(my_dict.get("key2"));
4853
System.out.println(my_dict.get("key3"));
4954
System.out.println(my_dict.get("key4"));
55+
5056
}
5157

5258
private static void testNestedDict() {
59+
5360
Dict inner_dict = new Dict();
5461
inner_dict.add("innerKey1", "innerValue1");
5562
inner_dict.add("innerKey2", 99);
@@ -63,64 +70,92 @@ private static void testNestedDict() {
6370
System.out.println(retrieved_inner_dict.get("innerKey1"));
6471
System.out.println(retrieved_inner_dict.get("innerKey2"));
6572
System.out.println(outer_dict.get("outerKey2"));
73+
6674
}
6775

6876
private static void testListSorting() {
77+
6978
List my_list = new List();
79+
7080
my_list.append(5);
7181
my_list.append(2);
7282
my_list.append(8);
7383
my_list.append(1);
7484

7585
my_list.sort(true);
86+
7687
for (int i = 0; i < my_list.len(); i++) {
88+
7789
System.out.println(my_list.get(i));
90+
7891
}
7992

8093
List my_list2 = new List();
94+
8195
my_list2.append(5);
8296
my_list2.append(2);
8397
my_list2.append(8);
8498
my_list2.append(1);
8599

86100
my_list2.sort(false);
101+
87102
for (int i = 0; i < my_list2.len(); i++) {
103+
88104
System.out.println(my_list2.get(i));
105+
89106
}
107+
90108
}
91109

92110
private static void testListMethods() {
111+
93112
List my_list = new List();
113+
94114
my_list.append("item1");
95115
my_list.append("item2");
96116
my_list.append("item3");
97117

98118
System.out.println("Initial list:");
119+
99120
for (int i = 0; i < my_list.len(); i++) {
121+
100122
System.out.println(my_list.get(i));
123+
101124
}
102125

103126
my_list.remove(1);
127+
104128
System.out.println("After removing index 1:");
129+
105130
for (int i = 0; i < my_list.len(); i++) {
131+
106132
System.out.println(my_list.get(i));
133+
107134
}
108135

109136
my_list.insert(1, "newItem");
137+
110138
System.out.println("After inserting at index 1:");
139+
111140
for (int i = 0; i < my_list.len(); i++) {
141+
112142
System.out.println(my_list.get(i));
143+
113144
}
114145

115146
System.out.println("List contains 'item1': " + my_list.contains("item1"));
116147
System.out.println("List contains 'itemX': " + my_list.contains("itemX"));
117148

118149
my_list.clear();
150+
119151
System.out.println("After clearing the list, length: " + my_list.len());
152+
120153
}
121154

122155
private static void testDictMethods() {
156+
123157
Dict my_dict = new Dict();
158+
124159
my_dict.add("key1", "value1");
125160
my_dict.add("key2", "value2");
126161
my_dict.add("key3", "value3");
@@ -131,6 +166,7 @@ private static void testDictMethods() {
131166
System.out.println(my_dict.get("key3"));
132167

133168
my_dict.remove("key2");
169+
134170
System.out.println("After removing 'key2':");
135171
System.out.println(my_dict.get("key1"));
136172
System.out.println(my_dict.get("key3"));
@@ -142,12 +178,15 @@ private static void testDictMethods() {
142178
System.out.println("Dictionary contains value 'valueX': " + String.valueOf(my_dict.containsValue("valueX")));
143179

144180
my_dict.clear();
181+
145182
System.out.println("After clearing the dictionary, size: " + String.valueOf(my_dict.size()));
183+
146184
}
147185

148186
private static void testListWithDifferentDataTypes() {
149187

150188
List my_list = new List();
189+
151190
my_list.append("string");
152191
my_list.append(123);
153192
my_list.append(45.67);
@@ -165,20 +204,24 @@ private static void testListWithDifferentDataTypes() {
165204
}
166205

167206
private static void testDictWithComplexValues() {
207+
168208
Dict my_dict = new Dict();
169209
List listValue = new List();
210+
170211
listValue.append(1);
171212
listValue.append(2);
172213
listValue.append(3);
173214

174215
Dict nestedDict = new Dict();
216+
175217
nestedDict.add("nestedKey1", "nestedValue1");
176218
nestedDict.add("nestedKey2", 100);
177219

178220
my_dict.add("listKey", listValue);
179221
my_dict.add("dictKey", nestedDict);
180222

181223
System.out.println("Testing dictionary with complex values:");
224+
182225
List retrievedList = (List) my_dict.get("listKey");
183226

184227
for (int i = 0; i < retrievedList.len(); i++) {
@@ -188,92 +231,117 @@ private static void testDictWithComplexValues() {
188231
}
189232

190233
Dict retrievedDict = (Dict) my_dict.get("dictKey");
234+
191235
System.out.println(retrievedDict.get("nestedKey1"));
192236
System.out.println(retrievedDict.get("nestedKey2"));
193237
}
194238

195239
private static void testListEdgeCases() {
240+
196241
List my_list = new List();
197242

198243
System.out.println("Testing edge cases for list:");
199244
System.out.println("Initial length: " + my_list.len());
200245

201246
try {
247+
202248
my_list.get(0);
249+
203250
} catch (Exception e) {
251+
204252
System.out.println("Caught exception when accessing empty list: " + e.getMessage());
253+
205254
}
206255

207256
my_list.append("onlyItem");
208257
System.out.println("After adding one item: " + my_list.get(0));
209258

210259
my_list.remove(0);
211260
System.out.println("After removing the only item, length: " + my_list.len());
261+
212262
}
213263

214264
private static void testDictEdgeCases() {
265+
215266
Dict my_dict = new Dict();
216267

217268
System.out.println("Testing edge cases for dictionary:");
218269
System.out.println("Initial size: " + my_dict.size());
219270

220271
try {
272+
221273
my_dict.get("nonExistentKey");
274+
222275
} catch (Exception e) {
276+
223277
System.out.println("Caught exception when accessing non-existent key: " + e.getMessage());
278+
224279
}
225280

226281
my_dict.add("key1", "value1");
227282
System.out.println("After adding one key-value pair: " + my_dict.get("key1"));
228283

229284
my_dict.remove("key1");
230285
System.out.println("After removing the only key, size: " + my_dict.size());
286+
231287
}
232288

233289
private static void testListEquality() {
290+
234291
List list1 = new List();
292+
235293
list1.append(1);
236294
list1.append(2);
237295
list1.append(3);
238296

239297
List list2 = new List();
298+
240299
list2.append(1);
241300
list2.append(2);
242301
list2.append(3);
243302

244303
List list3 = new List();
304+
245305
list3.append(3);
246306
list3.append(2);
247307
list3.append(1);
248308

249309
System.out.println("Testing list equality:");
250310
System.out.println("list1 equals list2: " + list1.isEqualTo(list2));
251311
System.out.println("list1 equals list3: " + list1.isEqualTo(list3));
312+
252313
}
253314

254315
private static void testDictEquality() {
316+
255317
Dict dict1 = new Dict();
318+
256319
dict1.add("key1", "value1");
257320
dict1.add("key2", "value2");
258321

259322
Dict dict2 = new Dict();
323+
260324
dict2.add("key1", "value1");
261325
dict2.add("key2", "value2");
262326

263327
Dict dict3 = new Dict();
328+
264329
dict3.add("key2", "value2");
265330
dict3.add("key1", "value1");
266331

267332
System.out.println("Testing dictionary equality:");
268333
System.out.println("dict1 equals dict2: " + dict1.isEqualTo(dict2));
269334
System.out.println("dict1 equals dict3: " + dict1.isEqualTo(dict3));
335+
270336
}
271337

272338
private static void finalTests() {
339+
273340
System.out.println("Running final tests to ensure readiness:");
274341

275342
// Test List with mixed data types
276343
List mixedList = new List();
344+
277345
mixedList.append("text");
278346
mixedList.append(42);
279347
mixedList.append(3.14);
@@ -291,10 +359,12 @@ private static void finalTests() {
291359
// Test Dict with nested structures
292360
Dict complexDict = new Dict();
293361
List innerList = new List();
362+
294363
innerList.append("inner1");
295364
innerList.append("inner2");
296365

297366
Dict innerDict = new Dict();
367+
298368
innerDict.add("innerKey", "innerValue");
299369

300370
complexDict.add("listKey", innerList);
@@ -314,6 +384,7 @@ private static void finalTests() {
314384

315385
// Test List sorting with edge cases
316386
List edgeCaseList = new List();
387+
317388
edgeCaseList.append(10);
318389
edgeCaseList.append(5);
319390
edgeCaseList.append(10);
@@ -330,6 +401,7 @@ private static void finalTests() {
330401

331402
// Test Dict with overwriting keys
332403
Dict overwriteDict = new Dict();
404+
333405
overwriteDict.add("key", "initialValue");
334406
overwriteDict.add("key", "newValue");
335407

@@ -347,10 +419,12 @@ private static void finalTests() {
347419
// Test List and Dict equality with edge cases
348420
List listA = new List();
349421
List listB = new List();
422+
350423
System.out.println("Final test - Empty list equality: " + listA.isEqualTo(listB));
351424

352425
Dict dictA = new Dict();
353426
Dict dictB = new Dict();
427+
354428
System.out.println("Final test - Empty dict equality: " + dictA.isEqualTo(dictB));
355429

356430
listA.append(1);
@@ -360,5 +434,8 @@ private static void finalTests() {
360434

361435
System.out.println("Final test - Non-empty list equality: " + listA.isEqualTo(listB));
362436
System.out.println("Final test - Non-empty dict equality: " + dictA.isEqualTo(dictB));
437+
363438
}
439+
440+
364441
}

tests/test

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ JAR_NAME="$1"
44

55
cd "$(dirname "$0")"
66

7-
mv ../$JAR_NAME ./$JAR_NAME
7+
cd ..
88

99
echo "Compiling Test.java with $JAR_NAME..."
10-
javac -cp "./$JAR_NAME" ./Test.java
10+
javac -cp "$JAR_NAME" tests/Test.java
1111

1212
if [ $? -ne 0 ]; then
1313

@@ -17,4 +17,4 @@ if [ $? -ne 0 ]; then
1717
fi
1818

1919
echo "Executing Tests..."
20-
java -cp "./$JAR_NAME:tests" Test
20+
java -cp "$JAR_NAME:tests" Test

0 commit comments

Comments
 (0)