divijvaidya commented on code in PR #12689:
URL: https://github.com/apache/kafka/pull/12689#discussion_r980910425
##########
core/src/test/scala/kafka/api/LeaderAndIsrTest.scala:
##########
@@ -31,4 +31,56 @@ final class LeaderAndIsrTest {
assertEquals(List(3), recoveringLeaderAndIsr.isr)
assertEquals(LeaderRecoveryState.RECOVERING,
recoveringLeaderAndIsr.leaderRecoveryState)
}
+
+ @Test
+ def testNewLeaderAndIsr(): Unit = {
+ val leaderAndIsr = LeaderAndIsr(1, List(1, 2))
+ val newLeaderAndIsr = leaderAndIsr.newLeaderAndIsr(2, List(1, 2))
+
+ assertEquals(2, newLeaderAndIsr.leader)
+ assertEquals(List(1, 2), newLeaderAndIsr.isr)
+ assertEquals(LeaderRecoveryState.RECOVERED,
newLeaderAndIsr.leaderRecoveryState)
+ }
+
+ @Test
+ def testNewLeader(): Unit = {
+ val leaderAndIsr = LeaderAndIsr(2, List(1, 2, 3))
+
+ assertEquals(2, leaderAndIsr.leader)
+ assertEquals(List(1, 2, 3), leaderAndIsr.isr)
+
+ val newLeaderAndIsr = leaderAndIsr.newLeader(3)
+
+ assertEquals(3, newLeaderAndIsr.leader)
+ assertEquals(List(1, 2, 3), newLeaderAndIsr.isr)
+ }
+
+ @Test
+ def testNewEpoch() : Unit = {
+ val leaderAndIsr = LeaderAndIsr(3, List(1, 2, 3))
+
+ assertEquals(0, leaderAndIsr.leaderEpoch)
+
+ val leaderWithNewEpoch = leaderAndIsr.newEpoch
+
+ assertEquals(1, leaderWithNewEpoch.leaderEpoch)
+ }
+
+ @Test
+ def testLeaderOpt() : Unit = {
+ val leaderAndIsr = LeaderAndIsr(2, List(1, 2, 3))
+
+ assertEquals(2, leaderAndIsr.leaderOpt.get)
+ }
+
+ @Test
+ def testWithZkVersion() : Unit = {
+ val leaderAndIsr = LeaderAndIsr(3, List(1, 2, 3))
+
+ assertEquals(0, leaderAndIsr.zkVersion)
Review Comment:
`LeaderAndIsr` on trunk[ does not have a member called
`zkVersion`](https://github.com/apache/kafka/blob/trunk/core/src/main/scala/kafka/api/LeaderAndIsr.scala#L22)
and the compilation for this PR is failing due to that.
You might want to work with `trunk` branch in your local repository to get
the latest code and verify the build succeeds using `/gradlew unittest`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]