This commit is contained in:
parent
784cb2335c
commit
e8b2ea9a92
|
@ -0,0 +1,11 @@
|
||||||
|
package com.baeldung.springjunitconfiguration;
|
||||||
|
|
||||||
|
public class Person {
|
||||||
|
|
||||||
|
String name;
|
||||||
|
|
||||||
|
public Person(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,33 @@
|
||||||
|
package com.baeldung.springjunitconfiguration;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.context.ApplicationContext;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @SpringJUnitConfig(SpringJUnitConfigTest.Config.class) is equivalent to:
|
||||||
|
*
|
||||||
|
* @ExtendWith(SpringExtension.class)
|
||||||
|
* @ContextConfiguration(classes = SpringJUnitConfigTest.Config.class )
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@SpringJUnitConfig(SpringJUnitConfigIntegrationTest.Config.class)
|
||||||
|
public class SpringJUnitConfigIntegrationTest {
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
static class Config {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ApplicationContext applicationContext;
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void givenAppContext_WhenInjected_ThenItShouldNotBeNull() {
|
||||||
|
assertNotNull(applicationContext);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
package com.baeldung.springjunitconfiguration;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import org.junit.jupiter.params.ParameterizedTest;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.boot.test.context.SpringBootTest;
|
||||||
|
import org.springframework.context.ApplicationContext;
|
||||||
|
import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;
|
||||||
|
import org.springframework.test.context.support.AnnotationConfigContextLoader;
|
||||||
|
|
||||||
|
|
||||||
|
@SpringJUnitConfig(classes = TestConfig.class , loader = AnnotationConfigContextLoader.class)
|
||||||
|
public class SpringJUnitConfigurationParameterizedTest {
|
||||||
|
|
||||||
|
@ParameterizedTest
|
||||||
|
@ValueSource(strings = { "Dilbert", "Wally" })
|
||||||
|
void people(String name, @Autowired List<Person> people) {
|
||||||
|
assertThat(people.stream()
|
||||||
|
.map(Person::getName)
|
||||||
|
.filter(name::equals)).hasSize(1);
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,34 @@
|
||||||
|
package com.baeldung.springjunitconfiguration;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
import org.springframework.test.context.junit.jupiter.web.SpringJUnitWebConfig;
|
||||||
|
import org.springframework.web.context.WebApplicationContext;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertNotNull;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @SpringJUnitWebConfig(SpringJUnitWebConfigTest.Config.class) is equivalent to:
|
||||||
|
*
|
||||||
|
* @ExtendWith(SpringExtension.class)
|
||||||
|
* @WebAppConfiguration
|
||||||
|
* @ContextConfiguration(classes = SpringJUnitWebConfigTest.Config.class )
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@SpringJUnitWebConfig(SpringJUnitWebConfigIntegrationTest.Config.class)
|
||||||
|
public class SpringJUnitWebConfigIntegrationTest {
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
static class Config {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private WebApplicationContext webAppContext;
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void givenWebAppContext_WhenInjected_ThenItShouldNotBeNull() {
|
||||||
|
assertNotNull(webAppContext);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,19 @@
|
||||||
|
package com.baeldung.springjunitconfiguration;
|
||||||
|
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
import org.springframework.context.annotation.Primary;
|
||||||
|
@Configuration
|
||||||
|
public class TestConfig {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
Person dilbert() {
|
||||||
|
return new Person("Dilbert");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
Person wally() {
|
||||||
|
return new Person("Wally");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue