commit 634703c4cb0cd1387f9e2d0a8e15b90765f2c5a2 Author: Balaji Seshadri Date: Fri Oct 31 16:29:40 2014 -0600 KAFKA-328 Write unit test for kafka server startup and shutdown API diff --git a/core/src/test/scala/unit/kafka/server/ServerShutdownTest.scala b/core/src/test/scala/unit/kafka/server/ServerShutdownTest.scala index 1bfb501..b5de9c6 100644 --- a/core/src/test/scala/unit/kafka/server/ServerShutdownTest.scala +++ b/core/src/test/scala/unit/kafka/server/ServerShutdownTest.scala @@ -146,4 +146,14 @@ class ServerShutdownTest extends JUnit3Suite with ZooKeeperTestHarness { .map(_.asInstanceOf[Thread]) .count(t => !t.isDaemon && t.isAlive && t.getClass.getCanonicalName.toLowerCase.startsWith("kafka"))) } + + def testConsecutiveShutdown(){ + val server = new KafkaServer(config) + server.startup() + + server.shutdown() + server.awaitShutdown() + server.shutdown() + assertTrue(true); + } } diff --git a/core/src/test/scala/unit/kafka/server/ServerStartupTest.scala b/core/src/test/scala/unit/kafka/server/ServerStartupTest.scala index a0ed485..0b35a2b 100644 --- a/core/src/test/scala/unit/kafka/server/ServerStartupTest.scala +++ b/core/src/test/scala/unit/kafka/server/ServerStartupTest.scala @@ -18,7 +18,6 @@ package kafka.server import org.scalatest.junit.JUnit3Suite -import kafka.zk import kafka.utils.ZkUtils import kafka.utils.Utils import kafka.utils.TestUtils @@ -36,7 +35,6 @@ class ServerStartupTest extends JUnit3Suite with ZooKeeperTestHarness { val props = TestUtils.createBrokerConfig(brokerId, TestUtils.choosePort()) val zooKeeperConnect = props.get("zookeeper.connect") props.put("zookeeper.connect", zooKeeperConnect + zookeeperChroot) - server = TestUtils.createServer(new KafkaConfig(props)) } @@ -51,4 +49,18 @@ class ServerStartupTest extends JUnit3Suite with ZooKeeperTestHarness { assertTrue(pathExists) } + def testServerStartupConsecutively() { + server.shutdown() + try { + server.startup() + server.startup() + } + catch { + case ex:IllegalStateException => { + assertTrue(ex.getMessage().contains("This scheduler has already been started!")) + } + } + server.shutdown() + } + } \ No newline at end of file