Last active
June 28, 2025 16:57
-
-
Save Kevn-Block/880e1eb8d532399af98fff8d6f6e3b69 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
interface Logger { | |
fun log(msg: String): String | |
} | |
@Benchmark | |
fun mockWithDIAndCall() { | |
val mockLogger = mockk<Logger>(relaxed = isRelaxed) { | |
every { log(any()) } returns "Hello, Mockk!" | |
} | |
val consumer = EventLoggerWithDI(logger = mockLogger) | |
val event = consumer.logEvent("Test Event") // Uses mockLogger | |
Assert.assertEquals("Hello, Mockk!", event) | |
} | |
@Benchmark | |
fun mockObjectAndCall() { | |
mockkObject(SingletonLogger) | |
every { SingletonLogger.log(any()) } returns "Hello, Mockk!" | |
val consumer = EventLogger() | |
val event = consumer.logEvent("Test Event") // Uses SingletonLogger | |
Assert.assertEquals("Hello, Mockk!", event) | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment