Endre Deak
11/16/2022, 9:44 PMimport kotlinx.coroutines.runBlocking
import mu.KotlinLogging
import org.junit.jupiter.api.Test
internal class MdcTest {
@Test
fun testMdcContextBehavior() = runBlocking {
withContext(MDCContext(mapOf("foo" to "bar"))) {
logger.warn { "context should have bar" }
assertEquals(MDC.get("foo"}), "bar")
awaitAll(
async { assertMdcContext("bar1") },
async { assertMdcContext("bar2") }
)
logger.warn { "context should have bar " }
assertEquals(MDC.get("foo"), "bar")
}
}
private suspend fun assertMdcContext(id: String) {
withContext(MDCContext(mapOf("foo" to id))) {
logger.warn { "message with $id" }
assertEquals(MDC.get("foo"), id)
}
}
}
Endre Deak
11/16/2022, 9:46 PMNOPMDCAdapter
oshai
02/04/2023, 7:15 PMEndre Deak
02/06/2023, 3:28 PMoshai
02/06/2023, 3:36 PM