Skip to content

Commit ac64441

Browse files
committed
Merge pull request #12495 from dreis2211
* pr/12495: Use ApplicationContextRunner in tests
2 parents 19b7268 + ca30739 commit ac64441

File tree

1 file changed

+15
-34
lines changed

1 file changed

+15
-34
lines changed

spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/condition/ConditionalOnNotWebApplicationTests.java

Lines changed: 15 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2012-2017 the original author or authors.
2+
* Copyright 2012-2018 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -16,20 +16,17 @@
1616

1717
package org.springframework.boot.autoconfigure.condition;
1818

19-
import org.junit.After;
2019
import org.junit.Test;
2120
import reactor.core.publisher.Mono;
2221

2322
import org.springframework.boot.autoconfigure.web.reactive.MockReactiveWebServerFactory;
24-
import org.springframework.boot.web.reactive.context.AnnotationConfigReactiveWebApplicationContext;
23+
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
24+
import org.springframework.boot.test.context.runner.ReactiveWebApplicationContextRunner;
25+
import org.springframework.boot.test.context.runner.WebApplicationContextRunner;
2526
import org.springframework.boot.web.reactive.server.ReactiveWebServerFactory;
26-
import org.springframework.context.ConfigurableApplicationContext;
27-
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
2827
import org.springframework.context.annotation.Bean;
2928
import org.springframework.context.annotation.Configuration;
3029
import org.springframework.http.server.reactive.HttpHandler;
31-
import org.springframework.mock.web.MockServletContext;
32-
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
3330

3431
import static org.assertj.core.api.Assertions.assertThat;
3532
import static org.assertj.core.api.Assertions.entry;
@@ -42,43 +39,27 @@
4239
*/
4340
public class ConditionalOnNotWebApplicationTests {
4441

45-
private ConfigurableApplicationContext context;
46-
47-
@After
48-
public void closeContext() {
49-
if (this.context != null) {
50-
this.context.close();
51-
}
52-
}
53-
5442
@Test
5543
public void testNotWebApplicationWithServletContext() {
56-
AnnotationConfigWebApplicationContext ctx = new AnnotationConfigWebApplicationContext();
57-
ctx.register(NotWebApplicationConfiguration.class);
58-
ctx.setServletContext(new MockServletContext());
59-
ctx.refresh();
60-
this.context = ctx;
61-
assertThat(this.context.getBeansOfType(String.class)).isEmpty();
44+
new WebApplicationContextRunner()
45+
.withUserConfiguration(NotWebApplicationConfiguration.class)
46+
.run((context) -> assertThat(context).doesNotHaveBean(String.class));
6247
}
6348

6449
@Test
6550
public void testNotWebApplicationWithReactiveContext() {
66-
AnnotationConfigReactiveWebApplicationContext context = new AnnotationConfigReactiveWebApplicationContext();
67-
context.register(ReactiveApplicationConfig.class,
68-
NotWebApplicationConfiguration.class);
69-
context.refresh();
70-
this.context = context;
71-
assertThat(this.context.getBeansOfType(String.class)).isEmpty();
51+
new ReactiveWebApplicationContextRunner()
52+
.withUserConfiguration(ReactiveApplicationConfig.class,
53+
NotWebApplicationConfiguration.class)
54+
.run((context) -> assertThat(context).doesNotHaveBean(String.class));
7255
}
7356

7457
@Test
7558
public void testNotWebApplication() {
76-
AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext();
77-
ctx.register(NotWebApplicationConfiguration.class);
78-
ctx.refresh();
79-
this.context = ctx;
80-
assertThat(this.context.getBeansOfType(String.class))
81-
.containsExactly(entry("none", "none"));
59+
new ApplicationContextRunner()
60+
.withUserConfiguration(NotWebApplicationConfiguration.class)
61+
.run((context) -> assertThat(context).getBeans(String.class)
62+
.containsExactly(entry("none", "none")));
8263
}
8364

8465
@Configuration

0 commit comments

Comments
 (0)