This repository was archived by the owner on Jan 20, 2023. It is now read-only.
File tree Expand file tree Collapse file tree 1 file changed +33
-0
lines changed
src/test/kotlin/com/mapk/krowmapper Expand file tree Collapse file tree 1 file changed +33
-0
lines changed Original file line number Diff line number Diff line change
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
+ }
You can’t perform that action at this time.
0 commit comments