fix(test): embedded Redis 종료 누수를 방지한다
This commit is contained in:
@@ -18,9 +18,7 @@ class EmbeddedRedisInitializer : ApplicationContextInitializer<ConfigurableAppli
|
||||
}
|
||||
|
||||
private object EmbeddedRedisHolder {
|
||||
private var redisServer: RedisServer? = null
|
||||
private var port: Int? = null
|
||||
private var shutdownHookRegistered = false
|
||||
|
||||
@Synchronized
|
||||
fun start(): Int {
|
||||
@@ -29,8 +27,9 @@ private object EmbeddedRedisHolder {
|
||||
}
|
||||
|
||||
val selectedPort = PortProvider.newEphemeralPortProvider().get()
|
||||
redisServer = RedisServer.newRedisServer()
|
||||
RedisServer.newRedisServer()
|
||||
.port(selectedPort)
|
||||
.onShutdownForceStop(true)
|
||||
.setting("bind 127.0.0.1")
|
||||
.setting("daemonize no")
|
||||
.setting("appendonly no")
|
||||
@@ -38,22 +37,6 @@ private object EmbeddedRedisHolder {
|
||||
.also { it.start() }
|
||||
port = selectedPort
|
||||
|
||||
if (!shutdownHookRegistered) {
|
||||
Runtime.getRuntime().addShutdownHook(
|
||||
Thread {
|
||||
stop()
|
||||
}
|
||||
)
|
||||
shutdownHookRegistered = true
|
||||
}
|
||||
|
||||
return selectedPort
|
||||
}
|
||||
|
||||
@Synchronized
|
||||
fun stop() {
|
||||
redisServer?.stop()
|
||||
redisServer = null
|
||||
port = null
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user