Making sure to stop embedded web servers in tests
Closes gh-9012
This commit is contained in:
parent
d1ea4f8a8a
commit
2b4f2c6aba
|
|
@ -19,6 +19,7 @@ package org.springframework.boot.actuate.cloudfoundry;
|
||||||
import javax.net.ssl.SSLHandshakeException;
|
import javax.net.ssl.SSLHandshakeException;
|
||||||
|
|
||||||
import org.hamcrest.Matcher;
|
import org.hamcrest.Matcher;
|
||||||
|
import org.junit.After;
|
||||||
import org.junit.Rule;
|
import org.junit.Rule;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.rules.ExpectedException;
|
import org.junit.rules.ExpectedException;
|
||||||
|
|
@ -44,6 +45,15 @@ public class SkipSslVerificationHttpRequestFactoryTests {
|
||||||
@Rule
|
@Rule
|
||||||
public ExpectedException thrown = ExpectedException.none();
|
public ExpectedException thrown = ExpectedException.none();
|
||||||
|
|
||||||
|
private WebServer webServer;
|
||||||
|
|
||||||
|
@After
|
||||||
|
public void shutdownContainer() {
|
||||||
|
if (this.webServer != null) {
|
||||||
|
this.webServer.stop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void restCallToSelfSignedServerShouldNotThrowSslException() throws Exception {
|
public void restCallToSelfSignedServerShouldNotThrowSslException() throws Exception {
|
||||||
String httpsUrl = getHttpsUrl();
|
String httpsUrl = getHttpsUrl();
|
||||||
|
|
@ -65,10 +75,10 @@ public class SkipSslVerificationHttpRequestFactoryTests {
|
||||||
private String getHttpsUrl() {
|
private String getHttpsUrl() {
|
||||||
TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory(0);
|
TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory(0);
|
||||||
factory.setSsl(getSsl("password", "classpath:test.jks"));
|
factory.setSsl(getSsl("password", "classpath:test.jks"));
|
||||||
WebServer webServer = factory.getWebServer(
|
this.webServer = factory.getWebServer(
|
||||||
new ServletRegistrationBean<>(new ExampleServlet(), "/hello"));
|
new ServletRegistrationBean<>(new ExampleServlet(), "/hello"));
|
||||||
webServer.start();
|
this.webServer.start();
|
||||||
return "https://localhost:" + webServer.getPort() + "/hello";
|
return "https://localhost:" + this.webServer.getPort() + "/hello";
|
||||||
}
|
}
|
||||||
|
|
||||||
private Ssl getSsl(String keyPassword, String keyStore) {
|
private Ssl getSsl(String keyPassword, String keyStore) {
|
||||||
|
|
|
||||||
|
|
@ -269,8 +269,10 @@ public class DefaultServletWebServerFactoryCustomizerTests {
|
||||||
public void defaultTomcatBackgroundProcessorDelay() throws Exception {
|
public void defaultTomcatBackgroundProcessorDelay() throws Exception {
|
||||||
TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory();
|
TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory();
|
||||||
this.customizer.customize(factory);
|
this.customizer.customize(factory);
|
||||||
assertThat(((TomcatWebServer) factory.getWebServer()).getTomcat().getEngine()
|
TomcatWebServer webServer = (TomcatWebServer) factory.getWebServer();
|
||||||
.getBackgroundProcessorDelay()).isEqualTo(30);
|
assertThat(webServer.getTomcat().getEngine().getBackgroundProcessorDelay())
|
||||||
|
.isEqualTo(30);
|
||||||
|
webServer.stop();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
@ -280,8 +282,10 @@ public class DefaultServletWebServerFactoryCustomizerTests {
|
||||||
bindProperties(map);
|
bindProperties(map);
|
||||||
TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory();
|
TomcatServletWebServerFactory factory = new TomcatServletWebServerFactory();
|
||||||
this.customizer.customize(factory);
|
this.customizer.customize(factory);
|
||||||
assertThat(((TomcatWebServer) factory.getWebServer()).getTomcat().getEngine()
|
TomcatWebServer webServer = (TomcatWebServer) factory.getWebServer();
|
||||||
.getBackgroundProcessorDelay()).isEqualTo(5);
|
assertThat(webServer.getTomcat().getEngine().getBackgroundProcessorDelay())
|
||||||
|
.isEqualTo(5);
|
||||||
|
webServer.stop();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
|
||||||
|
|
@ -262,8 +262,9 @@ public class JettyServletWebServerFactoryTests
|
||||||
JettyServletWebServerFactory factory = getFactory();
|
JettyServletWebServerFactory factory = getFactory();
|
||||||
factory.setThreadPool(null);
|
factory.setThreadPool(null);
|
||||||
assertThat(factory.getThreadPool()).isNull();
|
assertThat(factory.getThreadPool()).isNull();
|
||||||
JettyWebServer jettyWebServer = (JettyWebServer) factory.getWebServer();
|
this.webServer = factory.getWebServer();
|
||||||
assertThat(jettyWebServer.getServer().getThreadPool()).isNotNull();
|
assertThat(((JettyWebServer) this.webServer).getServer().getThreadPool())
|
||||||
|
.isNotNull();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
@ -271,8 +272,9 @@ public class JettyServletWebServerFactoryTests
|
||||||
JettyServletWebServerFactory factory = getFactory();
|
JettyServletWebServerFactory factory = getFactory();
|
||||||
ThreadPool threadPool = mock(ThreadPool.class);
|
ThreadPool threadPool = mock(ThreadPool.class);
|
||||||
factory.setThreadPool(threadPool);
|
factory.setThreadPool(threadPool);
|
||||||
JettyWebServer jettyWebServer = (JettyWebServer) factory.getWebServer();
|
this.webServer = factory.getWebServer();
|
||||||
assertThat(jettyWebServer.getServer().getThreadPool()).isSameAs(threadPool);
|
assertThat(((JettyWebServer) this.webServer).getServer().getThreadPool())
|
||||||
|
.isSameAs(threadPool);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -261,10 +261,15 @@ public class UndertowServletWebServerFactoryTests
|
||||||
}
|
}
|
||||||
|
|
||||||
private ServletContainer getServletContainerFromNewFactory() {
|
private ServletContainer getServletContainerFromNewFactory() {
|
||||||
UndertowServletWebServer undertow1 = (UndertowServletWebServer) getFactory()
|
UndertowServletWebServer container = (UndertowServletWebServer)
|
||||||
.getWebServer();
|
getFactory().getWebServer();
|
||||||
return ((DeploymentManager) ReflectionTestUtils.getField(undertow1, "manager"))
|
try {
|
||||||
.getDeployment().getServletContainer();
|
return ((DeploymentManager) ReflectionTestUtils.getField(container, "manager"))
|
||||||
|
.getDeployment().getServletContainer();
|
||||||
|
}
|
||||||
|
finally {
|
||||||
|
container.stop();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue