diff --git a/lib/kotlin/cross-test-server/build.gradle.kts b/lib/kotlin/cross-test-server/build.gradle.kts
index 6b20de1..8a654d9 100644
--- a/lib/kotlin/cross-test-server/build.gradle.kts
+++ b/lib/kotlin/cross-test-server/build.gradle.kts
@@ -18,8 +18,8 @@
  */
 
 plugins {
-    kotlin("jvm") version "1.5.31"
-    id("com.ncorti.ktfmt.gradle") version "0.4.0"
+    kotlin("jvm")
+    id("com.ncorti.ktfmt.gradle")
     java
     application
 }
@@ -37,8 +37,6 @@
     implementation("org.apache.thrift:libthrift:INCLUDED")
     // https://mvnrepository.com/artifact/ch.qos.logback/logback-classic
     implementation("ch.qos.logback:logback-classic:1.3.0-alpha14")
-    testImplementation("org.jetbrains.kotlin:kotlin-test")
-    testImplementation("org.jetbrains.kotlin:kotlin-test-junit")
 }
 
 tasks {
diff --git a/lib/kotlin/cross-test-server/src/main/kotlin/org/apache/thrift/test/TestServer.kt b/lib/kotlin/cross-test-server/src/main/kotlin/org/apache/thrift/test/TestServer.kt
index b04548d..4b2bdff 100644
--- a/lib/kotlin/cross-test-server/src/main/kotlin/org/apache/thrift/test/TestServer.kt
+++ b/lib/kotlin/cross-test-server/src/main/kotlin/org/apache/thrift/test/TestServer.kt
@@ -143,7 +143,7 @@
         var zlib = false
         var transportType = "buffered"
         var protocolType = "binary"
-//        var serverType = "thread-pool"
+        //  var serverType = "thread-pool"
         var serverType = "nonblocking"
         val domainSocket = ""
         var stringLimit: Long = -1
@@ -308,11 +308,12 @@
             // Blocking servers
 
             // SSL socket
-            val tServerSocket: TServerSocket = if (ssl) {
-                TSSLTransportFactory.getServerSocket(port, 0)
-            } else {
-                TServerSocket(ServerSocketTransportArgs().port(port))
-            }
+            val tServerSocket: TServerSocket =
+                if (ssl) {
+                    TSSLTransportFactory.getServerSocket(port, 0)
+                } else {
+                    TServerSocket(ServerSocketTransportArgs().port(port))
+                }
             if (serverType == "simple") {
                 // Simple Server
                 val tServerArgs = TServer.Args(tServerSocket)
