Skip to content

Commit eebe41c

Browse files
authored
Update StalinSortTest.java
1 parent 6acf621 commit eebe41c

File tree

1 file changed

+19
-47
lines changed

1 file changed

+19
-47
lines changed
Lines changed: 19 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,36 @@
11
package com.thealgorithms.sorts;
22

33
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
4-
import static org.junit.jupiter.api.Assertions.assertThrows;
4+
import static org.junit.jupiter.params.provider.Arguments.arguments;
55

66
import java.util.stream.Stream;
7-
import org.junit.jupiter.api.Test;
7+
88
import org.junit.jupiter.params.ParameterizedTest;
9-
import org.junit.jupiter.params.provider.Arguments;
109
import org.junit.jupiter.params.provider.MethodSource;
1110

12-
public class StalinSortTest {
13-
11+
class StalinSortTest {
1412
@ParameterizedTest
1513
@MethodSource("provideArraysForStalinSort")
16-
public void testStalinSort(Comparable[] inputArray, Comparable[] expectedArray) {
17-
StalinSort stalinSort = new StalinSort();
18-
// Explicitly call the sort method that accepts arrays
19-
assertArrayEquals(expectedArray, stalinSort.sort((Comparable[]) inputArray));
14+
void testStalinSort(Integer[] input, Integer[] expected) {
15+
assertArrayEquals(expected, new StalinSort().sort(input));
2016
}
2117

2218
private static Stream<Arguments> provideArraysForStalinSort() {
2319
return Stream.of(
24-
Arguments.of(new Integer[] {4}, new Integer[] {4}),
25-
Arguments.of(new Integer[] {4, 23, 6, 78, 1, 54, 231, 9, 12}, new Integer[] {4, 23, 78, 231}),
26-
Arguments.of(new Integer[] {5, 5, 5, 5, 5}, new Integer[] {5, 5, 5, 5, 5}),
27-
Arguments.of(new Integer[] {1, 2, 3, 4, 5}, new Integer[] {1, 2, 3, 4, 5}),
28-
Arguments.of(new Integer[] {5, 4, 3, 2, 1}, new Integer[] {5}),
29-
Arguments.of(new String[] {"c", "a", "e", "b", "d"}, new String[] {"c", "e"}),
30-
Arguments.of(new Integer[] {-1, -2, -3, 4, 5}, new Integer[] {-1, 4, 5}),
31-
Arguments.of(new Integer[] {0, -1, -2, 1, 2}, new Integer[] {0, 1, 2}),
32-
Arguments.of(new Integer[] {3, -1, 0, -5, 2}, new Integer[] {3}),
33-
Arguments.of(new Integer[] {10, 10, 10, 10}, new Integer[] {10, 10, 10, 10}),
34-
Arguments.of(new Integer[] {1, 2, 2, 3, 3, 3, 4}, new Integer[] {1, 2, 2, 3, 3, 3, 4}),
35-
Arguments.of(new Integer[] {Integer.MAX_VALUE, Integer.MIN_VALUE, 0}, new Integer[] {Integer.MAX_VALUE}),
36-
Arguments.of(new Character[] {'d', 'a', 'c', 'b'}, new Character[] {'d'}),
37-
Arguments.of(new Integer[] {100, 200, 150, 300, 250, 400, 350, 450, 500}, new Integer[] {100, 200, 300, 400, 500})
20+
arguments(new Integer[] {4}, new Integer[] {4}),
21+
arguments(new Integer[] {4, 23, 6, 78, 1, 54, 231, 9, 12}, new Integer[] {4, 23, 78, 231}),
22+
arguments(new Integer[] {5, 5, 5, 5, 5}, new Integer[] {5, 5, 5, 5, 5}),
23+
arguments(new Integer[] {1, 2, 3, 4, 5}, new Integer[] {1, 2, 3, 4, 5}),
24+
arguments(new Integer[] {5, 4, 3, 2, 1}, new Integer[] {5}),
25+
arguments(new String[] {"c", "a", "e", "b", "d"}, new String[] {"c", "e"}),
26+
arguments(new Integer[] {-1, -2, -3, 4, 5}, new Integer[] {-1, 4, 5}),
27+
arguments(new Integer[] {0, -1, -2, 1, 2}, new Integer[] {0, 1, 2}),
28+
arguments(new Integer[] {3, -1, 0, -5, 2}, new Integer[] {3}),
29+
arguments(new Integer[] {10, 10, 10, 10}, new Integer[] {10, 10, 10, 10}),
30+
arguments(new Integer[] {1, 2, 2, 3, 3, 3, 4}, new Integer[] {1, 2, 2, 3, 3, 3, 4}),
31+
arguments(new Integer[] {Integer.MAX_VALUE, Integer.MIN_VALUE, 0}, new Integer[] {Integer.MAX_VALUE}),
32+
arguments(new Character[] {'d', 'a', 'c', 'b'}, new Character[] {'d'}),
33+
arguments(new Integer[] {100, 200, 150, 300, 250, 400, 350, 450, 500}, new Integer[] {100, 200, 300, 400, 500})
3834
);
3935
}
40-
41-
@Test
42-
public void testWithEmptyArray() {
43-
StalinSort stalinSort = new StalinSort();
44-
Integer[] inputArray = {};
45-
Integer[] expectedArray = {};
46-
assertArrayEquals(expectedArray, stalinSort.sort(inputArray));
47-
}
48-
49-
@Test
50-
public void testWithNullValues() {
51-
assertThrows(NullPointerException.class, () -> {
52-
StalinSort stalinSort = new StalinSort();
53-
stalinSort.sort(null);
54-
});
55-
}
56-
57-
@Test
58-
public void testWithMixedDataTypes() {
59-
assertThrows(ClassCastException.class, () -> {
60-
StalinSort stalinSort = new StalinSort();
61-
stalinSort.sort(new Comparable[] {"a", 1});
62-
});
63-
}
6436
}

0 commit comments

Comments
 (0)