320x100
@MockK
lateinit var repository: UserRepository
@Test
fun test() {
// given
lateinit var result: User
every { repository.save(any<User>()) } answers {
result = firstArg() // set save argument
firstArg()
}
// when
// then
assertEquals(result, ...) // save 파라미터로 확인 가능
}
@Test
fun test() {
// given
every { repository.save(any<User>()) } returnsArgument(0) // #1
every { repository.save(any<User>()) } returnsArgument 0 // #2
// #1, #2 모두 같은 표현
}
mocking한 함수의 파라미터를 위와 같은 방법으로 가져오거나 세팅할 수 있다.
참고 : https://mockk.io/
320x100
'Back-End (web)' 카테고리의 다른 글
[JUnit5] @ParameterizedTest (0) | 2019.12.15 |
---|---|
[IntellJ] Kotlin 코드를 java 코드로 확인하기 (0) | 2019.12.09 |
[Test] webClient 통신 테스트 (mockServer) (0) | 2019.12.08 |
[Kotlin] String to LocalDateTime parse (0) | 2019.12.07 |
[JUnit5] @TestInstance (0) | 2019.12.04 |
댓글