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

Commit 2fc53f1

Browse files
committed
デフォルト引数を用いるかの判定関数のテスト
1 parent a43b435 commit 2fc53f1

File tree

1 file changed

+32
-0
lines changed

1 file changed

+32
-0
lines changed

src/test/kotlin/com/mapk/core/FunctionsTest.kt

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,19 @@
11
package com.mapk.core
22

33
import com.mapk.annotations.KParameterAlias
4+
import com.mapk.annotations.KUseDefaultArgument
45
import io.mockk.every
56
import io.mockk.mockk
7+
import java.lang.IllegalArgumentException
68
import kotlin.reflect.KParameter
79
import org.junit.jupiter.api.Assertions.assertEquals
10+
import org.junit.jupiter.api.Assertions.assertFalse
11+
import org.junit.jupiter.api.Assertions.assertTrue
812
import org.junit.jupiter.api.BeforeEach
913
import org.junit.jupiter.api.DisplayName
1014
import org.junit.jupiter.api.Nested
1115
import org.junit.jupiter.api.Test
16+
import org.junit.jupiter.api.assertThrows
1217

1318
@DisplayName("関数類のテスト")
1419
class FunctionsTest {
@@ -45,4 +50,31 @@ class FunctionsTest {
4550
assertEquals(aliasedName, parameter.getAliasOrName())
4651
}
4752
}
53+
54+
@Nested
55+
@DisplayName("デフォルト引数を用いるかの判定関数のテスト")
56+
inner class IsUseDefaultArgumentTest {
57+
@Test
58+
@DisplayName("デフォルト引数を用いない場合")
59+
fun noDefaultArgument() {
60+
every { parameter.annotations } returns emptyList()
61+
assertFalse(parameter.isUseDefaultArgument())
62+
}
63+
64+
@Test
65+
@DisplayName("デフォルト引数を用いる指定が有るが、実際はデフォルト引数が設定されていない場合")
66+
fun isIncorrect() {
67+
every { parameter.annotations } returns listOf(mockk<KUseDefaultArgument>())
68+
every { parameter.isOptional } returns false
69+
assertThrows<IllegalArgumentException> { parameter.isUseDefaultArgument() }
70+
}
71+
72+
@Test
73+
@DisplayName("正常入力")
74+
fun isCorrect() {
75+
every { parameter.annotations } returns listOf(mockk<KUseDefaultArgument>())
76+
every { parameter.isOptional } returns true
77+
assertTrue(parameter.isUseDefaultArgument())
78+
}
79+
}
4880
}

0 commit comments

Comments
 (0)