Refactor InvocableHandlerMethodKotlinTests
The variant in org.springframework.web.method.support in order to allow testing with a various classes. See gh-31856
This commit is contained in:
parent
3f5c3b1747
commit
917978cbc2
|
@ -38,7 +38,7 @@ class InvocableHandlerMethodKotlinTests {
|
||||||
@Test
|
@Test
|
||||||
fun intDefaultValue() {
|
fun intDefaultValue() {
|
||||||
composite.addResolver(StubArgumentResolver(Int::class.java, null))
|
composite.addResolver(StubArgumentResolver(Int::class.java, null))
|
||||||
val value = getInvocable(Int::class.java).invokeForRequest(request, null)
|
val value = getInvocable(Handler::class.java, Int::class.java).invokeForRequest(request, null)
|
||||||
|
|
||||||
Assertions.assertThat(getStubResolver(0).resolvedParameters).hasSize(1)
|
Assertions.assertThat(getStubResolver(0).resolvedParameters).hasSize(1)
|
||||||
Assertions.assertThat(value).isEqualTo("20")
|
Assertions.assertThat(value).isEqualTo("20")
|
||||||
|
@ -47,7 +47,7 @@ class InvocableHandlerMethodKotlinTests {
|
||||||
@Test
|
@Test
|
||||||
fun booleanDefaultValue() {
|
fun booleanDefaultValue() {
|
||||||
composite.addResolver(StubArgumentResolver(Boolean::class.java, null))
|
composite.addResolver(StubArgumentResolver(Boolean::class.java, null))
|
||||||
val value = getInvocable(Boolean::class.java).invokeForRequest(request, null)
|
val value = getInvocable(Handler::class.java, Boolean::class.java).invokeForRequest(request, null)
|
||||||
|
|
||||||
Assertions.assertThat(getStubResolver(0).resolvedParameters).hasSize(1)
|
Assertions.assertThat(getStubResolver(0).resolvedParameters).hasSize(1)
|
||||||
Assertions.assertThat(value).isEqualTo("true")
|
Assertions.assertThat(value).isEqualTo("true")
|
||||||
|
@ -56,7 +56,7 @@ class InvocableHandlerMethodKotlinTests {
|
||||||
@Test
|
@Test
|
||||||
fun nullableIntDefaultValue() {
|
fun nullableIntDefaultValue() {
|
||||||
composite.addResolver(StubArgumentResolver(Int::class.javaObjectType, null))
|
composite.addResolver(StubArgumentResolver(Int::class.javaObjectType, null))
|
||||||
val value = getInvocable(Int::class.javaObjectType).invokeForRequest(request, null)
|
val value = getInvocable(Handler::class.java, Int::class.javaObjectType).invokeForRequest(request, null)
|
||||||
|
|
||||||
Assertions.assertThat(getStubResolver(0).resolvedParameters).hasSize(1)
|
Assertions.assertThat(getStubResolver(0).resolvedParameters).hasSize(1)
|
||||||
Assertions.assertThat(value).isEqualTo("20")
|
Assertions.assertThat(value).isEqualTo("20")
|
||||||
|
@ -65,7 +65,7 @@ class InvocableHandlerMethodKotlinTests {
|
||||||
@Test
|
@Test
|
||||||
fun nullableBooleanDefaultValue() {
|
fun nullableBooleanDefaultValue() {
|
||||||
composite.addResolver(StubArgumentResolver(Boolean::class.javaObjectType, null))
|
composite.addResolver(StubArgumentResolver(Boolean::class.javaObjectType, null))
|
||||||
val value = getInvocable(Boolean::class.javaObjectType).invokeForRequest(request, null)
|
val value = getInvocable(Handler::class.java, Boolean::class.javaObjectType).invokeForRequest(request, null)
|
||||||
|
|
||||||
Assertions.assertThat(getStubResolver(0).resolvedParameters).hasSize(1)
|
Assertions.assertThat(getStubResolver(0).resolvedParameters).hasSize(1)
|
||||||
Assertions.assertThat(value).isEqualTo("true")
|
Assertions.assertThat(value).isEqualTo("true")
|
||||||
|
@ -73,34 +73,34 @@ class InvocableHandlerMethodKotlinTests {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun unitReturnValue() {
|
fun unitReturnValue() {
|
||||||
val value = getInvocable().invokeForRequest(request, null)
|
val value = getInvocable(Handler::class.java).invokeForRequest(request, null)
|
||||||
Assertions.assertThat(value).isNull()
|
Assertions.assertThat(value).isNull()
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun nullReturnValue() {
|
fun nullReturnValue() {
|
||||||
composite.addResolver(StubArgumentResolver(String::class.java, null))
|
composite.addResolver(StubArgumentResolver(String::class.java, null))
|
||||||
val value = getInvocable(String::class.java).invokeForRequest(request, null)
|
val value = getInvocable(Handler::class.java, String::class.java).invokeForRequest(request, null)
|
||||||
Assertions.assertThat(value).isNull()
|
Assertions.assertThat(value).isNull()
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun valueClass() {
|
fun valueClass() {
|
||||||
composite.addResolver(StubArgumentResolver(Long::class.java, 1L))
|
composite.addResolver(StubArgumentResolver(Long::class.java, 1L))
|
||||||
val value = getInvocable(Long::class.java).invokeForRequest(request, null)
|
val value = getInvocable(Handler::class.java, Long::class.java).invokeForRequest(request, null)
|
||||||
Assertions.assertThat(value).isEqualTo(1L)
|
Assertions.assertThat(value).isEqualTo(1L)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun valueClassDefaultValue() {
|
fun valueClassDefaultValue() {
|
||||||
composite.addResolver(StubArgumentResolver(Double::class.java))
|
composite.addResolver(StubArgumentResolver(Double::class.java))
|
||||||
val value = getInvocable(Double::class.java).invokeForRequest(request, null)
|
val value = getInvocable(Handler::class.java, Double::class.java).invokeForRequest(request, null)
|
||||||
Assertions.assertThat(value).isEqualTo(3.1)
|
Assertions.assertThat(value).isEqualTo(3.1)
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun getInvocable(vararg argTypes: Class<*>): InvocableHandlerMethod {
|
private fun getInvocable(clazz: Class<*>, vararg argTypes: Class<*>): InvocableHandlerMethod {
|
||||||
val method = ResolvableMethod.on(Handler::class.java).argTypes(*argTypes).resolveMethod()
|
val method = ResolvableMethod.on(clazz).argTypes(*argTypes).resolveMethod()
|
||||||
val handlerMethod = InvocableHandlerMethod(Handler(), method)
|
val handlerMethod = InvocableHandlerMethod(clazz.constructors.first().newInstance(), method)
|
||||||
handlerMethod.setHandlerMethodArgumentResolvers(composite)
|
handlerMethod.setHandlerMethodArgumentResolvers(composite)
|
||||||
return handlerMethod
|
return handlerMethod
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue