パラメータを生成するメソッドがStaticメソッドである必要があるのでJvmStaticにする必要があった
@RunWith(Parameterized::class)
internal class ParameterTest(
val case: TestCase
) {
data class TestCase(
val param: Param,
val expect: Expect
) {
// テストケースのパラメータを定義する
data class Param(
val parameter: Parameter
)
// テストケースの期待値
data class Expect(
val value: String
)
}
companion object {
@JvmStatic
@Parameters
fun params() = listOf(
TestCase(
param = TestCase.Param(),
expect = TestCase.Expect("dummy")
)
)
}
@Test
fun test_param() {
val act = TestTarget(
param = case.param.parameter,
)
assertThat(act).isEqualTo(case.expect.value)
}
}