diff --git a/clients/src/test/java/org/apache/kafka/clients/ApiVersionsTest.java b/clients/src/test/java/org/apache/kafka/clients/ApiVersionsTest.java index 89065536435c..ee11446f402b 100644 --- a/clients/src/test/java/org/apache/kafka/clients/ApiVersionsTest.java +++ b/clients/src/test/java/org/apache/kafka/clients/ApiVersionsTest.java @@ -24,6 +24,8 @@ import java.util.Collections; import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; public class ApiVersionsTest { @@ -55,4 +57,21 @@ public void testMaxUsableProduceMagicWithRaftController() { .setMaxVersion((short) 2)))); assertEquals(RecordBatch.CURRENT_MAGIC_VALUE, apiVersions.maxUsableProduceMagic()); } + + @Test + public void testZkMigrationReady() { + ApiVersions apiVersions = new ApiVersions(); + + apiVersions.update("0", NodeApiVersions.create()); + assertFalse(apiVersions.isAllNodeZkMigrationReady()); + + apiVersions.update("0", new NodeApiVersions(Collections.emptyList(), Collections.emptyList(), true)); + assertTrue(apiVersions.isAllNodeZkMigrationReady()); + + apiVersions.update("1", new NodeApiVersions(Collections.emptyList(), Collections.emptyList(), true)); + assertTrue(apiVersions.isAllNodeZkMigrationReady()); + + apiVersions.update("2", NodeApiVersions.create()); + assertFalse(apiVersions.isAllNodeZkMigrationReady()); + } }