- Notifications
You must be signed in to change notification settings - Fork 19.9k
/
Copy pathLongestAlternatingSubsequenceTest.java
22 lines (17 loc) · 1.01 KB
/
LongestAlternatingSubsequenceTest.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
packagecom.thealgorithms.dynamicprogramming;
importstaticorg.junit.jupiter.api.Assertions.assertEquals;
importjava.util.stream.Stream;
importorg.junit.jupiter.params.ParameterizedTest;
importorg.junit.jupiter.params.provider.Arguments;
importorg.junit.jupiter.params.provider.MethodSource;
publicclassLongestAlternatingSubsequenceTest {
@ParameterizedTest
@MethodSource("provideTestCases")
voidtestAlternatingLength(int[] arr, intexpected) {
assertEquals(expected, LongestAlternatingSubsequence.alternatingLength(arr, arr.length));
}
privatestaticStream<Arguments> provideTestCases() {
returnStream.of(Arguments.of(newint[] {1}, 1), Arguments.of(newint[] {1, 2}, 2), Arguments.of(newint[] {2, 1}, 2), Arguments.of(newint[] {1, 3, 2, 4, 3, 5}, 6), Arguments.of(newint[] {1, 2, 3, 4, 5}, 2), Arguments.of(newint[] {5, 4, 3, 2, 1}, 2),
Arguments.of(newint[] {10, 22, 9, 33, 49, 50, 31, 60}, 6), Arguments.of(newint[] {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, 2));
}
}