Skip to content

Commit b2cce57

Browse files
authored
Added tests for tasks 101-2929
1 parent 68f38a5 commit b2cce57

File tree

5 files changed

+187
-0
lines changed

5 files changed

+187
-0
lines changed

src/test/kotlin/g0101_0200/s0101_symmetric_tree/SolutionTest.kt

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package g0101_0200.s0101_symmetric_tree
22

33
import com_github_leetcode.TreeNode
4+
import com_github_leetcode.TreeUtils
45
import org.hamcrest.CoreMatchers.equalTo
56
import org.hamcrest.MatcherAssert.assertThat
67
import org.junit.jupiter.api.Test
@@ -25,4 +26,33 @@ internal class SolutionTest {
2526
fun isSymmetric4() {
2627
assertThat(Solution().isSymmetric(TreeNode.create(listOf(1, 2, 2, 3, 4, 4, 5))), equalTo(false))
2728
}
29+
30+
@Test
31+
fun symmetricTree3() {
32+
assertThat(Solution().isSymmetric(null), equalTo(true))
33+
}
34+
35+
@Test
36+
fun symmetricTree4() {
37+
val root = TreeNode(1)
38+
assertThat(Solution().isSymmetric(root), equalTo(true))
39+
}
40+
41+
@Test
42+
fun symmetricTree5() {
43+
val root = TreeNode(1, TreeNode(2), null)
44+
assertThat(Solution().isSymmetric(root), equalTo(false))
45+
}
46+
47+
@Test
48+
fun symmetricTree6() {
49+
val root = TreeNode(1, null, TreeNode(2))
50+
assertThat(Solution().isSymmetric(root), equalTo(false))
51+
}
52+
53+
@Test
54+
fun symmetricTree7() {
55+
val root = TreeUtils.constructBinaryTree(listOf(1, 2, 2, 3, 4, 5, 3))
56+
assertThat(Solution().isSymmetric(root), equalTo(false))
57+
}
2858
}

src/test/kotlin/g0101_0200/s0198_house_robber/SolutionTest.kt

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,34 @@ internal class SolutionTest {
2929
fun rob5() {
3030
assertThat(Solution().rob(intArrayOf(1, 2)), equalTo(2))
3131
}
32+
33+
@Test
34+
fun rob6() {
35+
assertThat(Solution().rob(intArrayOf(5)), equalTo(5))
36+
}
37+
38+
@Test
39+
fun rob7() {
40+
assertThat(Solution().rob(intArrayOf(5, 10)), equalTo(10))
41+
}
42+
43+
@Test
44+
fun rob8() {
45+
assertThat(Solution().rob(intArrayOf(2, 1, 1, 2)), equalTo(4))
46+
}
47+
48+
@Test
49+
fun rob9() {
50+
assertThat(Solution().rob(intArrayOf(3, 3, 3, 3, 3)), equalTo(9))
51+
}
52+
53+
@Test
54+
fun rob10() {
55+
assertThat(Solution().rob(intArrayOf(100, 1, 100, 1, 100)), equalTo(300))
56+
}
57+
58+
@Test
59+
fun rob11() {
60+
assertThat(Solution().rob(intArrayOf()), equalTo(0))
61+
}
3262
}

src/test/kotlin/g0201_0300/s0232_implement_queue_using_stacks/MyQueueTest.kt

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,68 @@ internal class MyQueueTest {
1414
assertThat(myQueue.pop(), equalTo(1))
1515
assertThat(myQueue.empty(), equalTo(false))
1616
}
17+
18+
@Test
19+
fun queuePushPopPeekMultiple() {
20+
val myQueue = MyQueue()
21+
myQueue.push(10)
22+
myQueue.push(20)
23+
myQueue.push(30)
24+
25+
assertThat(myQueue.peek(), equalTo(10))
26+
assertThat(myQueue.pop(), equalTo(10))
27+
assertThat(myQueue.peek(), equalTo(20))
28+
assertThat(myQueue.pop(), equalTo(20))
29+
assertThat(myQueue.peek(), equalTo(30))
30+
assertThat(myQueue.pop(), equalTo(30))
31+
assertThat(myQueue.empty(), equalTo(true))
32+
}
33+
34+
@Test
35+
fun queueEmptyInitially() {
36+
val myQueue = MyQueue()
37+
assertThat(myQueue.empty(), equalTo(true))
38+
}
39+
40+
@Test
41+
fun queuePushAfterPopAll() {
42+
val myQueue = MyQueue()
43+
myQueue.push(1)
44+
myQueue.push(2)
45+
46+
assertThat(myQueue.pop(), equalTo(1))
47+
assertThat(myQueue.pop(), equalTo(2))
48+
assertThat(myQueue.empty(), equalTo(true))
49+
50+
myQueue.push(3)
51+
assertThat(myQueue.peek(), equalTo(3))
52+
assertThat(myQueue.empty(), equalTo(false))
53+
}
54+
55+
@Test
56+
fun queuePeekDoesNotRemove() {
57+
val myQueue = MyQueue()
58+
myQueue.push(5)
59+
myQueue.push(6)
60+
61+
assertThat(myQueue.peek(), equalTo(5))
62+
assertThat(myQueue.peek(), equalTo(5))
63+
assertThat(myQueue.pop(), equalTo(5))
64+
assertThat(myQueue.peek(), equalTo(6))
65+
}
66+
67+
@Test
68+
fun pushAfterPopTriggersRightToLeft() {
69+
val myQueue = MyQueue()
70+
myQueue.push(1)
71+
myQueue.push(2)
72+
73+
assertThat(myQueue.pop(), equalTo(1))
74+
75+
myQueue.push(3)
76+
77+
assertThat(myQueue.pop(), equalTo(2))
78+
assertThat(myQueue.pop(), equalTo(3))
79+
assertThat(myQueue.empty(), equalTo(true))
80+
}
1781
}

src/test/kotlin/g0201_0300/s0235_lowest_common_ancestor_of_a_binary_search_tree/SolutionTest.kt

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,4 +57,32 @@ internal class SolutionTest {
5757
equalTo(4),
5858
)
5959
}
60+
61+
@Test
62+
fun lowestCommonAncestor5() {
63+
val root = TreeNode(1)
64+
val result = Solution().lowestCommonAncestor(root, TreeNode(1), TreeNode(1))
65+
assertThat(result!!.`val`, equalTo(1))
66+
}
67+
68+
@Test
69+
fun lowestCommonAncestor6() {
70+
val root = TreeNode(3, TreeNode(1), TreeNode(4))
71+
val result = Solution().lowestCommonAncestor(root, TreeNode(1), TreeNode(1))
72+
assertThat(result!!.`val`, equalTo(1))
73+
}
74+
75+
@Test
76+
fun lowestCommonAncestor7() {
77+
val root = TreeNode(3, TreeNode(1), TreeNode(4))
78+
val result = Solution().lowestCommonAncestor(root, TreeNode(4), TreeNode(4))
79+
assertThat(result!!.`val`, equalTo(4))
80+
}
81+
82+
@Test
83+
fun lowestCommonAncestor8() {
84+
val root = TreeNode(5, TreeNode(3), TreeNode(8))
85+
val result = Solution().lowestCommonAncestor(root, TreeNode(3), TreeNode(8))
86+
assertThat(result!!.`val`, equalTo(5))
87+
}
6088
}

src/test/kotlin/g2901_3000/s2929_distribute_candies_among_children_ii/SolutionTest.kt

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,39 @@ internal class SolutionTest {
1414
fun distributeCandies2() {
1515
assertThat(Solution().distributeCandies(3, 3), equalTo(10L))
1616
}
17+
18+
@Test
19+
fun distributeCandies3() {
20+
assertThat(Solution().distributeCandies(2, 5), equalTo(6L))
21+
}
22+
23+
@Test
24+
fun distributeCandies4() {
25+
assertThat(Solution().distributeCandies(4, 4), equalTo(15L))
26+
}
27+
28+
@Test
29+
fun distributeCandies5() {
30+
assertThat(Solution().distributeCandies(7, 5), equalTo(27L))
31+
}
32+
33+
@Test
34+
fun distributeCandies6() {
35+
assertThat(Solution().distributeCandies(12, 5), equalTo(10L))
36+
}
37+
38+
@Test
39+
fun distributeCandies7() {
40+
assertThat(Solution().distributeCandies(20, 5), equalTo(0L))
41+
}
42+
43+
@Test
44+
fun distributeCandies8() {
45+
assertThat(Solution().distributeCandies(10, 5), equalTo(21L))
46+
}
47+
48+
@Test
49+
fun distributeCandies9() {
50+
assertThat(Solution().distributeCandies(15, 5), equalTo(1L))
51+
}
1752
}

0 commit comments

Comments
 (0)