From c979c8b32ef25859e809190dd566fa44f33a7cad Mon Sep 17 00:00:00 2001 From: Mark IJbema Date: Mon, 29 Jun 2026 12:06:45 +0200 Subject: [PATCH] test(jetbrains): wait for mock CLI accept loop --- .../kotlin/ai/kilocode/backend/testing/MockCliServer.kt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/kilo-jetbrains/backend/src/test/kotlin/ai/kilocode/backend/testing/MockCliServer.kt b/packages/kilo-jetbrains/backend/src/test/kotlin/ai/kilocode/backend/testing/MockCliServer.kt index 8754e7d110c..b8be1290adf 100644 --- a/packages/kilo-jetbrains/backend/src/test/kotlin/ai/kilocode/backend/testing/MockCliServer.kt +++ b/packages/kilo-jetbrains/backend/src/test/kotlin/ai/kilocode/backend/testing/MockCliServer.kt @@ -184,7 +184,9 @@ class MockCliServer : AutoCloseable { val srv = ServerSocket(0) server = srv port = srv.localPort - executor.submit { acceptLoop(srv) } + val ready = CountDownLatch(1) + executor.submit { acceptLoop(srv, ready) } + check(ready.await(5, TimeUnit.SECONDS)) { "Mock CLI accept loop did not start" } return port } @@ -235,7 +237,8 @@ class MockCliServer : AutoCloseable { server = null } - private fun acceptLoop(srv: ServerSocket) { + private fun acceptLoop(srv: ServerSocket, ready: CountDownLatch) { + ready.countDown() while (!closed.get() && !srv.isClosed) { try { val socket = srv.accept()