Merge branch '5.3.x'

This commit is contained in:
Sébastien Deleuze 2022-03-15 18:35:59 +01:00
commit ae1956cac7
2 changed files with 6 additions and 2 deletions

View File

@ -64,6 +64,6 @@ inline fun <reified T : Annotation> ListableBeanFactory.getBeansWithAnnotation()
* @author Sebastien Deleuze * @author Sebastien Deleuze
* @since 5.0 * @since 5.0
*/ */
inline fun <reified T : Annotation> ListableBeanFactory.findAnnotationOnBean(beanName:String): Annotation? = inline fun <reified T : Annotation> ListableBeanFactory.findAnnotationOnBean(beanName:String): T? =
findAnnotationOnBean(beanName, T::class.java) findAnnotationOnBean(beanName, T::class.java)

View File

@ -16,9 +16,11 @@
package org.springframework.beans.factory package org.springframework.beans.factory
import io.mockk.every
import io.mockk.mockk import io.mockk.mockk
import io.mockk.verify import io.mockk.verify
import org.junit.jupiter.api.Test import org.junit.jupiter.api.Test
import kotlin.reflect.full.createInstance
/** /**
* Mock object based tests for ListableBeanFactory Kotlin extensions * Mock object based tests for ListableBeanFactory Kotlin extensions
@ -77,10 +79,12 @@ class ListableBeanFactoryExtensionsTests {
verify { lbf.getBeansWithAnnotation(Bar::class.java) } verify { lbf.getBeansWithAnnotation(Bar::class.java) }
} }
@Suppress("UNUSED_VARIABLE")
@Test @Test
fun `findAnnotationOnBean with String and reified type parameters`() { fun `findAnnotationOnBean with String and reified type parameters`() {
val name = "bar" val name = "bar"
lbf.findAnnotationOnBean<Bar>(name) every { lbf.findAnnotationOnBean(name, Bar::class.java) } returns Bar::class.createInstance()
val annotation: Bar? = lbf.findAnnotationOnBean(name)
verify { lbf.findAnnotationOnBean(name, Bar::class.java) } verify { lbf.findAnnotationOnBean(name, Bar::class.java) }
} }