Skip to content

Commit cbabf54

Browse files
dreis2211snicoll
authored andcommitted
Polish argument capturing in two Tomcat tests
Closes gh-12203
1 parent c3ae02a commit cbabf54

File tree

2 files changed

+10
-30
lines changed

2 files changed

+10
-30
lines changed

spring-boot-project/spring-boot/src/test/java/org/springframework/boot/web/embedded/tomcat/TomcatReactiveWebServerFactoryTests.java

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,14 @@
2424
import org.apache.catalina.connector.Connector;
2525
import org.apache.catalina.core.AprLifecycleListener;
2626
import org.junit.Test;
27+
import org.mockito.ArgumentCaptor;
2728
import org.mockito.InOrder;
28-
import org.mockito.invocation.InvocationOnMock;
29-
import org.mockito.stubbing.Answer;
3029

3130
import org.springframework.boot.web.reactive.server.AbstractReactiveWebServerFactoryTests;
3231
import org.springframework.http.server.reactive.HttpHandler;
3332

3433
import static org.assertj.core.api.Assertions.assertThat;
3534
import static org.mockito.ArgumentMatchers.any;
36-
import static org.mockito.BDDMockito.willAnswer;
3735
import static org.mockito.Mockito.inOrder;
3836
import static org.mockito.Mockito.mock;
3937
import static org.mockito.Mockito.verify;
@@ -69,22 +67,14 @@ public void tomcatCustomizers() {
6967
}
7068

7169
@Test
72-
public void contextIsAddedToHostBeforeCustomizersAreCalled() throws Exception {
70+
public void contextIsAddedToHostBeforeCustomizersAreCalled() {
7371
TomcatReactiveWebServerFactory factory = getFactory();
7472
TomcatContextCustomizer customizer = mock(TomcatContextCustomizer.class);
75-
willAnswer(new Answer<Void>() {
76-
77-
@Override
78-
public Void answer(InvocationOnMock invocation) throws Throwable {
79-
assertThat(((Context) invocation.getArguments()[0]).getParent())
80-
.isNotNull();
81-
return null;
82-
}
83-
84-
}).given(customizer).customize(any(Context.class));
8573
factory.addContextCustomizers(customizer);
8674
this.webServer = factory.getWebServer(mock(HttpHandler.class));
87-
verify(customizer).customize(any(Context.class));
75+
ArgumentCaptor<Context> contextCaptor = ArgumentCaptor.forClass(Context.class);
76+
verify(customizer).customize(contextCaptor.capture());
77+
assertThat(contextCaptor.getValue().getParent()).isNotNull();
8878
}
8979

9080
@Test

spring-boot-project/spring-boot/src/test/java/org/springframework/boot/web/embedded/tomcat/TomcatServletWebServerFactoryTests.java

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,8 @@
4949
import org.junit.After;
5050
import org.junit.Rule;
5151
import org.junit.Test;
52+
import org.mockito.ArgumentCaptor;
5253
import org.mockito.InOrder;
53-
import org.mockito.invocation.InvocationOnMock;
54-
import org.mockito.stubbing.Answer;
5554

5655
import org.springframework.boot.testsupport.rule.OutputCapture;
5756
import org.springframework.boot.web.server.WebServerException;
@@ -63,7 +62,6 @@
6362
import static org.junit.Assert.fail;
6463
import static org.mockito.ArgumentMatchers.any;
6564
import static org.mockito.BDDMockito.given;
66-
import static org.mockito.BDDMockito.willAnswer;
6765
import static org.mockito.Mockito.inOrder;
6866
import static org.mockito.Mockito.mock;
6967
import static org.mockito.Mockito.verify;
@@ -147,22 +145,14 @@ public void tomcatCustomizers() {
147145
}
148146

149147
@Test
150-
public void contextIsAddedToHostBeforeCustomizersAreCalled() throws Exception {
148+
public void contextIsAddedToHostBeforeCustomizersAreCalled() {
151149
TomcatServletWebServerFactory factory = getFactory();
152150
TomcatContextCustomizer customizer = mock(TomcatContextCustomizer.class);
153-
willAnswer(new Answer<Void>() {
154-
155-
@Override
156-
public Void answer(InvocationOnMock invocation) throws Throwable {
157-
assertThat(((Context) invocation.getArguments()[0]).getParent())
158-
.isNotNull();
159-
return null;
160-
}
161-
162-
}).given(customizer).customize(any(Context.class));
163151
factory.addContextCustomizers(customizer);
164152
this.webServer = factory.getWebServer();
165-
verify(customizer).customize(any(Context.class));
153+
ArgumentCaptor<Context> contextCaptor = ArgumentCaptor.forClass(Context.class);
154+
verify(customizer).customize(contextCaptor.capture());
155+
assertThat(contextCaptor.getValue().getParent()).isNotNull();
166156
}
167157

168158
@Test

0 commit comments

Comments
 (0)