Migrate to AssertJ in Kotlin tests

Closes gh-23475
This commit is contained in:
Sebastien Deleuze
2019-09-02 15:59:26 +02:00
parent 3fcf4233a2
commit ca02cc1194
35 changed files with 336 additions and 403 deletions

View File

@@ -16,7 +16,7 @@
package org.springframework.beans
import org.junit.jupiter.api.Assertions.*
import org.assertj.core.api.Assertions.assertThat
import org.junit.jupiter.api.Test
/**
@@ -31,47 +31,47 @@ class KotlinBeanUtilsTests {
fun `Instantiate immutable class`() {
val constructor = BeanUtils.findPrimaryConstructor(Foo::class.java)!!
val foo = BeanUtils.instantiateClass(constructor, "a", 3)
assertEquals("a", foo.param1)
assertEquals(3, foo.param2)
assertThat(foo.param1).isEqualTo("a")
assertThat(foo.param2).isEqualTo(3)
}
@Test
fun `Instantiate immutable class with optional parameter and all parameters specified`() {
val constructor = BeanUtils.findPrimaryConstructor(Bar::class.java)!!
val bar = BeanUtils.instantiateClass(constructor, "a", 8)
assertEquals("a", bar.param1)
assertEquals(8, bar.param2)
assertThat(bar.param1).isEqualTo("a")
assertThat(bar.param2).isEqualTo(8)
}
@Test
fun `Instantiate immutable class with optional parameter and only mandatory parameters specified by position`() {
val constructor = BeanUtils.findPrimaryConstructor(Bar::class.java)!!
val bar = BeanUtils.instantiateClass(constructor, "a")
assertEquals("a", bar.param1)
assertEquals(12, bar.param2)
assertThat(bar.param1).isEqualTo("a")
assertThat(bar.param2).isEqualTo(12)
}
@Test
fun `Instantiate immutable class with optional parameter specified with null value`() {
val constructor = BeanUtils.findPrimaryConstructor(Bar::class.java)!!
val bar = BeanUtils.instantiateClass(constructor, "a", null)
assertEquals("a", bar.param1)
assertEquals(12, bar.param2)
assertThat(bar.param1).isEqualTo("a")
assertThat(bar.param2).isEqualTo(12)
}
@Test // gh-22531
fun `Instantiate immutable class with nullable parameter`() {
val constructor = BeanUtils.findPrimaryConstructor(Qux::class.java)!!
val bar = BeanUtils.instantiateClass(constructor, "a", null)
assertEquals("a", bar.param1)
assertNull(bar.param2)
assertThat(bar.param1).isEqualTo("a")
assertThat(bar.param2).isNull()
}
@Test // SPR-15851
fun `Instantiate mutable class with declared constructor and default values for all parameters`() {
val baz = BeanUtils.instantiateClass(Baz::class.java.getDeclaredConstructor())
assertEquals("a", baz.param1)
assertEquals(12, baz.param2)
assertThat(baz.param1).isEqualTo("a")
assertThat(baz.param2).isEqualTo(12)
}
class Foo(val param1: String, val param2: Int)

View File

@@ -16,16 +16,14 @@
package org.springframework.beans.factory.annotation
import org.assertj.core.api.Assertions.assertThat
import org.assertj.core.api.Assertions.assertThatExceptionOfType
import org.junit.jupiter.api.Test
import org.springframework.beans.factory.BeanCreationException
import org.springframework.beans.factory.support.DefaultListableBeanFactory
import org.springframework.beans.factory.support.RootBeanDefinition
import org.springframework.tests.sample.beans.TestBean
import org.junit.jupiter.api.Assertions.*
import org.junit.jupiter.api.fail
import org.springframework.beans.factory.BeanCreationException
import org.springframework.tests.sample.beans.Colour
import org.springframework.tests.sample.beans.TestBean
/**
* Tests for Kotlin support with [Autowired].
@@ -48,9 +46,9 @@ class KotlinAutowiredTests {
bf.registerSingleton("testBean", tb)
val kb = bf.getBean("annotatedBean", KotlinBean::class.java)
assertSame(tb, kb.injectedFromConstructor)
assertSame(tb, kb.injectedFromMethod)
assertSame(tb, kb.injectedField)
assertThat(kb.injectedFromConstructor).isSameAs(tb)
assertThat(kb.injectedFromMethod).isSameAs(tb)
assertThat(kb.injectedField).isSameAs(tb)
}
@Test
@@ -64,9 +62,9 @@ class KotlinAutowiredTests {
bf.registerBeanDefinition("annotatedBean", bd)
val kb = bf.getBean("annotatedBean", KotlinBean::class.java)
assertNull(kb.injectedFromConstructor)
assertNull(kb.injectedFromMethod)
assertNull(kb.injectedField)
assertThat(kb.injectedFromConstructor).isNull()
assertThat(kb.injectedFromMethod).isNull()
assertThat(kb.injectedField).isNull()
}
@Test // SPR-15847
@@ -82,9 +80,9 @@ class KotlinAutowiredTests {
bf.registerSingleton("testBean", tb)
val kb = bf.getBean("bean", KotlinBeanWithMandatoryAndOptionalParameters::class.java)
assertSame(tb, kb.injectedFromConstructor)
assertEquals("foo", kb.optional)
assertEquals("bar", kb.initializedField)
assertThat(kb.injectedFromConstructor).isSameAs(tb)
assertThat(kb.optional).isEqualTo("foo")
assertThat(kb.initializedField).isEqualTo("bar")
}
@Test
@@ -98,9 +96,9 @@ class KotlinAutowiredTests {
bf.registerBeanDefinition("bean", bd)
val kb = bf.getBean("bean", KotlinBeanWithOptionalParameters::class.java)
assertNotNull(kb.optional1)
assertEquals("foo", kb.optional2)
assertEquals("bar", kb.initializedField)
assertThat(kb.optional1).isNotNull()
assertThat(kb.optional2).isEqualTo("foo")
assertThat(kb.initializedField).isEqualTo("bar")
}
@Test // SPR-15847
@@ -116,8 +114,8 @@ class KotlinAutowiredTests {
bf.registerSingleton("testBean", tb)
val kb = bf.getBean("bean", KotlinBeanWithOptionalParameterAndExplicitConstructor::class.java)
assertSame(tb, kb.injectedFromConstructor)
assertEquals("foo", kb.optional)
assertThat(kb.injectedFromConstructor).isSameAs(tb)
assertThat(kb.optional).isEqualTo("foo")
}
@Test // SPR-15847
@@ -135,9 +133,9 @@ class KotlinAutowiredTests {
bf.registerSingleton("colour", colour)
val kb = bf.getBean("bean", KotlinBeanWithAutowiredSecondaryConstructor::class.java)
assertSame(tb, kb.injectedFromConstructor)
assertEquals("bar", kb.optional)
assertSame(colour, kb.injectedFromSecondaryConstructor)
assertThat(kb.injectedFromConstructor).isSameAs(tb)
assertThat(kb.optional).isEqualTo("bar")
assertThat(kb.injectedFromSecondaryConstructor).isSameAs(colour)
}
@Test // SPR-16012
@@ -151,7 +149,7 @@ class KotlinAutowiredTests {
bf.registerBeanDefinition("bean", bd)
val kb = bf.getBean("bean", KotlinBeanWithPrimaryAndDefaultConstructors::class.java)
assertNotNull(kb.testBean)
assertThat(kb.testBean).isNotNull()
}
@Test // SPR-16012
@@ -167,7 +165,7 @@ class KotlinAutowiredTests {
bf.registerSingleton("testBean", tb)
val kb = bf.getBean("bean", KotlinBeanWithPrimaryAndDefaultConstructors::class.java)
assertEquals(tb, kb.testBean)
assertThat(kb.testBean).isEqualTo(tb)
}
@Test // SPR-16289
@@ -197,13 +195,9 @@ class KotlinAutowiredTests {
bf.registerSingleton("testBean", tb)
val colour = Colour.BLUE
bf.registerSingleton("colour", colour)
try {
assertThatExceptionOfType(BeanCreationException::class.java).isThrownBy {
bf.getBean("bean", KotlinBeanWithSecondaryConstructor::class.java)
fail("should have thrown a BeanCreationException")
}
catch (e: BeanCreationException) {
// expected
}
}