Skip to content
This repository was archived by the owner on Jan 20, 2023. It is now read-only.

Commit 47cab50

Browse files
committed
デフォルト値を用いたマッピングテストを追加
1 parent 984d069 commit 47cab50

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package com.mapk.krowmapper
2+
3+
import com.google.common.base.CaseFormat
4+
import com.mapk.annotations.KUseDefaultArgument
5+
import io.mockk.every
6+
import io.mockk.mockk
7+
import io.mockk.verify
8+
import java.sql.ResultSet
9+
import org.junit.jupiter.api.Assertions
10+
import org.junit.jupiter.api.DisplayName
11+
import org.junit.jupiter.api.Test
12+
13+
class DefaultValueTest {
14+
data class Dst(val fooId: Int, @param:KUseDefaultArgument val barValue: String = "default")
15+
16+
private fun camelToSnake(camel: String): String = CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, camel)
17+
18+
@Test
19+
@DisplayName("デフォルト値を用いたマッピングテスト")
20+
fun test() {
21+
val resultSet = mockk<ResultSet>()
22+
every { resultSet.getObject("foo_id", any<Class<*>>()) } returns 1
23+
every { resultSet.getObject("bar_value", any<Class<*>>()) } returns "From result set."
24+
25+
val result = KRowMapper(::Dst, this::camelToSnake).mapRow(resultSet, 0)
26+
27+
Assertions.assertEquals(1, result.fooId)
28+
Assertions.assertEquals("default", result.barValue)
29+
30+
verify(exactly = 1) { resultSet.getObject("foo_id", Int::class.java) }
31+
verify(exactly = 0) { resultSet.getObject("bar_value", String::class.java) }
32+
}
33+
}

0 commit comments

Comments
 (0)