Skip to content

Commit 49a87d3

Browse files
authored
Add tests for CountFriendsPairing (TheAlgorithms#5643)
1 parent 4bcab89 commit 49a87d3

File tree

2 files changed

+51
-0
lines changed

2 files changed

+51
-0
lines changed

DIRECTORY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -785,6 +785,7 @@
785785
* [BoardPathTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/dynamicprogramming/BoardPathTest.java)
786786
* [CatalanNumberTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/dynamicprogramming/CatalanNumberTest.java)
787787
* [ClimbStairsTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/dynamicprogramming/ClimbStairsTest.java)
788+
* [CountFriendsPairingTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/dynamicprogramming/CountFriendsPairingTest.java)
788789
* [EditDistanceTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/dynamicprogramming/EditDistanceTest.java)
789790
* [EggDroppingTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/dynamicprogramming/EggDroppingTest.java)
790791
* [KnapsackMemoizationTest](https://github.com/TheAlgorithms/Java/blob/master/src/test/java/com/thealgorithms/dynamicprogramming/KnapsackMemoizationTest.java)
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
package com.thealgorithms.dynamicprogramming;
2+
3+
import static org.junit.jupiter.api.Assertions.assertFalse;
4+
import static org.junit.jupiter.api.Assertions.assertTrue;
5+
6+
import org.junit.jupiter.api.Test;
7+
8+
public class CountFriendsPairingTest {
9+
10+
@Test
11+
void testSmallCase() {
12+
int n = 5;
13+
int[] expectedGolombSequence = {1, 2, 2, 3, 3};
14+
15+
assertTrue(CountFriendsPairing.countFriendsPairing(n, expectedGolombSequence));
16+
}
17+
18+
@Test
19+
void testMismatchSequence() {
20+
int n = 5;
21+
int[] wrongSequence = {1, 2, 2, 2, 3}; // An incorrect sequence
22+
23+
assertFalse(CountFriendsPairing.countFriendsPairing(n, wrongSequence));
24+
}
25+
26+
@Test
27+
void testLargerCase() {
28+
int n = 10;
29+
int[] expectedGolombSequence = {1, 2, 2, 3, 3, 4, 4, 4, 5, 5};
30+
31+
assertTrue(CountFriendsPairing.countFriendsPairing(n, expectedGolombSequence));
32+
}
33+
34+
@Test
35+
void testEdgeCaseSingleElement() {
36+
int n = 1;
37+
int[] expectedGolombSequence = {1};
38+
39+
assertTrue(CountFriendsPairing.countFriendsPairing(n, expectedGolombSequence));
40+
}
41+
42+
@Test
43+
void testEmptySequence() {
44+
int n = 0;
45+
int[] emptySequence = {};
46+
47+
// Test the case where n is 0 (should handle this gracefully)
48+
assertTrue(CountFriendsPairing.countFriendsPairing(n, emptySequence));
49+
}
50+
}

0 commit comments

Comments
 (0)