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

Commit 690bba4

Browse files
authored
Merge pull request #18 from k163377/refactor_tests
Refactor tests.
2 parents f89081e + 3f403d3 commit 690bba4

File tree

8 files changed

+225
-186
lines changed

8 files changed

+225
-186
lines changed

src/test/kotlin/com/mapk/kmapper/ConverterKMapperTest.kt

Lines changed: 26 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import com.mapk.annotations.KConverter
66
import org.junit.jupiter.api.Assertions.assertEquals
77
import org.junit.jupiter.api.Assertions.assertTrue
88
import org.junit.jupiter.api.DisplayName
9+
import org.junit.jupiter.api.Nested
910
import org.junit.jupiter.api.Test
1011

1112
private data class ConstructorConverterDst(val argument: ConstructorConverter)
@@ -26,30 +27,34 @@ private data class StaticMethodConverterDst(val argument: StaticMethodConverter)
2627

2728
@DisplayName("コンバータ有りでのマッピングテスト")
2829
class ConverterKMapperTest {
29-
@Test
30-
@DisplayName("コンストラクターでのコンバートテスト")
31-
fun constructorConverterTest() {
32-
val mapper = KMapper(ConstructorConverterDst::class)
33-
val result = mapper.map(mapOf("argument" to 1))
34-
35-
assertEquals(ConstructorConverter(1), result.argument)
36-
}
30+
@Nested
31+
@DisplayName("KMapper")
32+
inner class KMapperTest {
33+
@Test
34+
@DisplayName("コンストラクターでのコンバートテスト")
35+
fun constructorConverterTest() {
36+
val mapper = KMapper(ConstructorConverterDst::class)
37+
val result = mapper.map(mapOf("argument" to 1))
38+
39+
assertEquals(ConstructorConverter(1), result.argument)
40+
}
3741

38-
@Test
39-
@DisplayName("コンパニオンオブジェクトに定義したコンバータでのコンバートテスト")
40-
fun companionConverterTest() {
41-
val mapper = KMapper(CompanionConverterDst::class)
42-
val result = mapper.map(mapOf("argument" to "arg"))
42+
@Test
43+
@DisplayName("コンパニオンオブジェクトに定義したコンバータでのコンバートテスト")
44+
fun companionConverterTest() {
45+
val mapper = KMapper(CompanionConverterDst::class)
46+
val result = mapper.map(mapOf("argument" to "arg"))
4347

44-
assertEquals("arg", result.argument.arg)
45-
}
48+
assertEquals("arg", result.argument.arg)
49+
}
4650

47-
@Test
48-
@DisplayName("スタティックメソッドに定義したコンバータでのコンバートテスト")
49-
fun staticMethodConverterTest() {
50-
val mapper = KMapper(StaticMethodConverterDst::class)
51-
val result = mapper.map(mapOf("argument" to "1,2,3"))
51+
@Test
52+
@DisplayName("スタティックメソッドに定義したコンバータでのコンバートテスト")
53+
fun staticMethodConverterTest() {
54+
val mapper = KMapper(StaticMethodConverterDst::class)
55+
val result = mapper.map(mapOf("argument" to "1,2,3"))
5256

53-
assertTrue(intArrayOf(1, 2, 3) contentEquals result.argument.arg)
57+
assertTrue(intArrayOf(1, 2, 3) contentEquals result.argument.arg)
58+
}
5459
}
5560
}

src/test/kotlin/com/mapk/kmapper/DefaultArgumentTest.kt

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,23 @@ package com.mapk.kmapper
33
import com.mapk.annotations.KUseDefaultArgument
44
import org.junit.jupiter.api.Assertions.assertEquals
55
import org.junit.jupiter.api.DisplayName
6+
import org.junit.jupiter.api.Nested
67
import org.junit.jupiter.api.Test
78

89
@DisplayName("デフォルト引数を指定するテスト")
910
class DefaultArgumentTest {
1011
data class Dst(val fooArgument: Int, @param:KUseDefaultArgument val barArgument: String = "default")
1112
data class Src(val fooArgument: Int, val barArgument: String)
1213

13-
@Test
14-
fun test() {
15-
val src = Src(1, "src")
14+
@Nested
15+
@DisplayName("KMapper")
16+
inner class KMapperTest {
17+
@Test
18+
fun test() {
19+
val src = Src(1, "src")
1620

17-
val result = KMapper(::Dst).map(src)
18-
assertEquals(Dst(1, "default"), result)
21+
val result = KMapper(::Dst).map(src)
22+
assertEquals(Dst(1, "default"), result)
23+
}
1924
}
2025
}

src/test/kotlin/com/mapk/kmapper/EnumMappingTest.kt

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ package com.mapk.kmapper
44

55
import org.junit.jupiter.api.Assertions.assertEquals
66
import org.junit.jupiter.api.DisplayName
7+
import org.junit.jupiter.api.Nested
78
import org.junit.jupiter.params.ParameterizedTest
89
import org.junit.jupiter.params.provider.EnumSource
910

@@ -15,13 +16,17 @@ private class EnumMappingDst(val language: JvmLanguage?)
1516

1617
@DisplayName("文字列 -> Enumのマッピングテスト")
1718
class EnumMappingTest {
18-
private val mapper = KMapper(EnumMappingDst::class)
19+
@Nested
20+
@DisplayName("KMapper")
21+
inner class KMapperTest {
22+
private val mapper = KMapper(EnumMappingDst::class)
1923

20-
@ParameterizedTest(name = "Non-Null要求")
21-
@EnumSource(value = JvmLanguage::class)
22-
fun test(language: JvmLanguage) {
23-
val result = mapper.map("language" to language.name)
24+
@ParameterizedTest(name = "Non-Null要求")
25+
@EnumSource(value = JvmLanguage::class)
26+
fun test(language: JvmLanguage) {
27+
val result = mapper.map("language" to language.name)
2428

25-
assertEquals(language, result.language)
29+
assertEquals(language, result.language)
30+
}
2631
}
2732
}

src/test/kotlin/com/mapk/kmapper/KGetterIgnoreTest.kt

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import com.mapk.annotations.KGetterIgnore
44
import org.junit.jupiter.api.Assertions.assertEquals
55
import org.junit.jupiter.api.Assertions.assertTrue
66
import org.junit.jupiter.api.DisplayName
7+
import org.junit.jupiter.api.Nested
78
import org.junit.jupiter.api.Test
89

910
class KGetterIgnoreTest {
@@ -12,18 +13,22 @@ class KGetterIgnoreTest {
1213

1314
data class Dst(val arg1: Int, val arg2: String, val arg3: Int, val arg4: String)
1415

15-
@Test
16-
@DisplayName("フィールドを無視するテスト")
17-
fun test() {
18-
val src1 = Src1(1, "2-1", 31)
19-
val src2 = Src2("2-2", 32, "4")
16+
@Nested
17+
@DisplayName("KMapper")
18+
inner class KMapperTest {
19+
@Test
20+
@DisplayName("フィールドを無視するテスト")
21+
fun test() {
22+
val src1 = Src1(1, "2-1", 31)
23+
val src2 = Src2("2-2", 32, "4")
2024

21-
val mapper = KMapper(::Dst)
25+
val mapper = KMapper(::Dst)
2226

23-
val dst1 = mapper.map(src1, src2)
24-
val dst2 = mapper.map(src2, src1)
27+
val dst1 = mapper.map(src1, src2)
28+
val dst2 = mapper.map(src2, src1)
2529

26-
assertTrue(dst1 == dst2)
27-
assertEquals(Dst(1, "2-1", 32, "4"), dst1)
30+
assertTrue(dst1 == dst2)
31+
assertEquals(Dst(1, "2-1", 32, "4"), dst1)
32+
}
2833
}
2934
}

src/test/kotlin/com/mapk/kmapper/ParameterNameConverterTest.kt

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,26 +3,31 @@ package com.mapk.kmapper
33
import com.google.common.base.CaseFormat
44
import org.junit.jupiter.api.Assertions.assertEquals
55
import org.junit.jupiter.api.DisplayName
6+
import org.junit.jupiter.api.Nested
67
import org.junit.jupiter.api.Test
78

89
private class CamelCaseDst(val camelCase: String)
910

1011
@DisplayName("パラメータ名変換のテスト")
1112
class ParameterNameConverterTest {
12-
@Test
13-
@DisplayName("スネークケースsrc -> キャメルケースdst")
14-
fun test() {
15-
val expected = "snakeCase"
16-
val src = mapOf("camel_case" to expected)
13+
@Nested
14+
@DisplayName("KMapper")
15+
inner class KMapperTest {
16+
@Test
17+
@DisplayName("スネークケースsrc -> キャメルケースdst")
18+
fun test() {
19+
val expected = "snakeCase"
20+
val src = mapOf("camel_case" to expected)
1721

18-
val mapper = KMapper(CamelCaseDst::class) {
19-
CaseFormat.LOWER_CAMEL.to(
20-
CaseFormat.LOWER_UNDERSCORE,
21-
it
22-
)
23-
}
24-
val result = mapper.map(src)
22+
val mapper = KMapper(CamelCaseDst::class) {
23+
CaseFormat.LOWER_CAMEL.to(
24+
CaseFormat.LOWER_UNDERSCORE,
25+
it
26+
)
27+
}
28+
val result = mapper.map(src)
2529

26-
assertEquals(expected, result.camelCase)
30+
assertEquals(expected, result.camelCase)
31+
}
2732
}
2833
}

src/test/kotlin/com/mapk/kmapper/PropertyAliasTest.kt

Lines changed: 28 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import com.mapk.annotations.KGetterAlias
44
import com.mapk.annotations.KParameterAlias
55
import org.junit.jupiter.api.Assertions.assertEquals
66
import org.junit.jupiter.api.DisplayName
7+
import org.junit.jupiter.api.Nested
78
import org.junit.jupiter.api.Test
89

910
private data class AliasedDst(
@@ -19,28 +20,32 @@ private data class AliasedSrc(
1920

2021
@DisplayName("エイリアスを貼った場合のテスト")
2122
class PropertyAliasTest {
22-
@Test
23-
@DisplayName("パラメータにエイリアスを貼った場合")
24-
fun paramAliasTest() {
25-
val src = mapOf(
26-
"arg1" to 1.0,
27-
"arg2" to "2",
28-
"arg3" to 3
29-
)
30-
31-
val result = KMapper(::AliasedDst).map(src)
32-
33-
assertEquals(1.0, result.arg1)
34-
assertEquals(3, result.arg2)
35-
}
36-
37-
@Test
38-
@DisplayName("ゲッターにエイリアスを貼った場合")
39-
fun getAliasTest() {
40-
val src = AliasedSrc(1.0, 2)
41-
val result = KMapper(::AliasedDst).map(src)
42-
43-
assertEquals(1.0, result.arg1)
44-
assertEquals(2, result.arg2)
23+
@Nested
24+
@DisplayName("KMapper")
25+
inner class KMapperTest {
26+
@Test
27+
@DisplayName("パラメータにエイリアスを貼った場合")
28+
fun paramAliasTest() {
29+
val src = mapOf(
30+
"arg1" to 1.0,
31+
"arg2" to "2",
32+
"arg3" to 3
33+
)
34+
35+
val result = KMapper(::AliasedDst).map(src)
36+
37+
assertEquals(1.0, result.arg1)
38+
assertEquals(3, result.arg2)
39+
}
40+
41+
@Test
42+
@DisplayName("ゲッターにエイリアスを貼った場合")
43+
fun getAliasTest() {
44+
val src = AliasedSrc(1.0, 2)
45+
val result = KMapper(::AliasedDst).map(src)
46+
47+
assertEquals(1.0, result.arg1)
48+
assertEquals(2, result.arg2)
49+
}
4550
}
4651
}

0 commit comments

Comments
 (0)