Skip to content

Commit 97ff088

Browse files
committed
Migrate spring-websocket test suite from JUnit 4 to JUnit Jupiter
See spring-projectsgh-23451
1 parent 3008a8c commit 97ff088

File tree

60 files changed

+236
-214
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+236
-214
lines changed

spring-websocket/src/test/java/org/springframework/web/socket/AbstractHttpRequestTests.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
package org.springframework.web.socket;
1818

19-
import org.junit.Before;
19+
import org.junit.jupiter.api.BeforeEach;
2020

2121
import org.springframework.http.server.ServerHttpAsyncRequestControl;
2222
import org.springframework.http.server.ServerHttpRequest;
@@ -44,7 +44,7 @@ public abstract class AbstractHttpRequestTests {
4444
protected ServerHttpAsyncRequestControl asyncControl;
4545

4646

47-
@Before
47+
@BeforeEach
4848
public void setup() {
4949
resetRequestAndResponse();
5050
}

spring-websocket/src/test/java/org/springframework/web/socket/AbstractWebSocketIntegrationTests.java

Lines changed: 29 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2002-2016 the original author or authors.
2+
* Copyright 2002-2019 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,16 +16,19 @@
1616

1717
package org.springframework.web.socket;
1818

19+
import java.lang.annotation.ElementType;
20+
import java.lang.annotation.Retention;
21+
import java.lang.annotation.RetentionPolicy;
22+
import java.lang.annotation.Target;
1923
import java.util.HashMap;
2024
import java.util.Map;
2125

2226
import org.apache.commons.logging.Log;
2327
import org.apache.commons.logging.LogFactory;
24-
import org.junit.After;
25-
import org.junit.Before;
26-
import org.junit.Rule;
27-
import org.junit.rules.TestName;
28-
import org.junit.runners.Parameterized.Parameter;
28+
import org.junit.jupiter.api.AfterEach;
29+
import org.junit.jupiter.api.TestInfo;
30+
import org.junit.jupiter.params.ParameterizedTest;
31+
import org.junit.jupiter.params.provider.MethodSource;
2932

3033
import org.springframework.context.Lifecycle;
3134
import org.springframework.context.annotation.Bean;
@@ -56,23 +59,28 @@ public abstract class AbstractWebSocketIntegrationTests {
5659
}
5760

5861

59-
@Rule
60-
public final TestName testName = new TestName();
61-
62-
@Parameter(0)
63-
public WebSocketTestServer server;
62+
@Retention(RetentionPolicy.RUNTIME)
63+
@Target(ElementType.METHOD)
64+
@ParameterizedTest(name = "server [{0}], client [{1}]")
65+
@MethodSource("arguments")
66+
protected @interface ParameterizedWebSocketTest {
67+
}
6468

65-
@Parameter(1)
66-
public WebSocketClient webSocketClient;
6769

6870
protected final Log logger = LogFactory.getLog(getClass());
6971

72+
protected WebSocketTestServer server;
73+
74+
protected WebSocketClient webSocketClient;
75+
7076
protected AnnotationConfigWebApplicationContext wac;
7177

7278

73-
@Before
74-
public void setup() throws Exception {
75-
logger.debug("Setting up '" + this.testName.getMethodName() + "', client=" +
79+
protected void setup(WebSocketTestServer server, WebSocketClient webSocketClient, TestInfo testInfo) throws Exception {
80+
this.server = server;
81+
this.webSocketClient = webSocketClient;
82+
83+
logger.debug("Setting up '" + testInfo.getTestMethod().get().getName() + "', client=" +
7684
this.webSocketClient.getClass().getSimpleName() + ", server=" +
7785
this.server.getClass().getSimpleName());
7886

@@ -94,8 +102,8 @@ public void setup() throws Exception {
94102

95103
protected abstract Class<?>[] getAnnotatedConfigClasses();
96104

97-
@After
98-
public void teardown() throws Exception {
105+
@AfterEach
106+
void teardown() throws Exception {
99107
try {
100108
if (this.webSocketClient instanceof Lifecycle) {
101109
((Lifecycle) this.webSocketClient).stop();
@@ -147,6 +155,7 @@ public DefaultHandshakeHandler handshakeHandler() {
147155
@Configuration
148156
static class JettyUpgradeStrategyConfig extends AbstractRequestUpgradeStrategyConfig {
149157

158+
@Override
150159
@Bean
151160
public RequestUpgradeStrategy requestUpgradeStrategy() {
152161
return new JettyRequestUpgradeStrategy();
@@ -157,6 +166,7 @@ public RequestUpgradeStrategy requestUpgradeStrategy() {
157166
@Configuration
158167
static class TomcatUpgradeStrategyConfig extends AbstractRequestUpgradeStrategyConfig {
159168

169+
@Override
160170
@Bean
161171
public RequestUpgradeStrategy requestUpgradeStrategy() {
162172
return new TomcatRequestUpgradeStrategy();
@@ -167,6 +177,7 @@ public RequestUpgradeStrategy requestUpgradeStrategy() {
167177
@Configuration
168178
static class UndertowUpgradeStrategyConfig extends AbstractRequestUpgradeStrategyConfig {
169179

180+
@Override
170181
@Bean
171182
public RequestUpgradeStrategy requestUpgradeStrategy() {
172183
return new UndertowRequestUpgradeStrategy();

spring-websocket/src/test/java/org/springframework/web/socket/TextMessageTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
package org.springframework.web.socket;
1818

19-
import org.junit.Test;
19+
import org.junit.jupiter.api.Test;
2020

2121
import static org.assertj.core.api.Assertions.assertThat;
2222

spring-websocket/src/test/java/org/springframework/web/socket/WebSocketExtensionTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818

1919
import java.util.List;
2020

21-
import org.junit.Test;
21+
import org.junit.jupiter.api.Test;
2222

2323
import static org.assertj.core.api.Assertions.assertThat;
2424

spring-websocket/src/test/java/org/springframework/web/socket/WebSocketHandshakeTests.java

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,14 +23,12 @@
2323
import java.util.concurrent.CountDownLatch;
2424
import java.util.concurrent.TimeUnit;
2525

26-
import org.junit.Test;
27-
import org.junit.runner.RunWith;
28-
import org.junit.runners.Parameterized;
29-
import org.junit.runners.Parameterized.Parameters;
26+
import org.junit.jupiter.api.TestInfo;
3027

3128
import org.springframework.beans.factory.annotation.Autowired;
3229
import org.springframework.context.annotation.Bean;
3330
import org.springframework.context.annotation.Configuration;
31+
import org.springframework.web.socket.client.WebSocketClient;
3432
import org.springframework.web.socket.client.jetty.JettyWebSocketClient;
3533
import org.springframework.web.socket.client.standard.StandardWebSocketClient;
3634
import org.springframework.web.socket.config.annotation.EnableWebSocket;
@@ -47,12 +45,11 @@
4745
*
4846
* @author Rossen Stoyanchev
4947
* @author Juergen Hoeller
48+
* @author Sam Brannen
5049
*/
51-
@RunWith(Parameterized.class)
52-
public class WebSocketHandshakeTests extends AbstractWebSocketIntegrationTests {
50+
class WebSocketHandshakeTests extends AbstractWebSocketIntegrationTests {
5351

54-
@Parameters(name = "server [{0}], client [{1}]")
55-
public static Iterable<Object[]> arguments() {
52+
static Iterable<Object[]> arguments() {
5653
return Arrays.asList(new Object[][] {
5754
{new JettyWebSocketTestServer(), new JettyWebSocketClient()},
5855
{new TomcatWebSocketTestServer(), new StandardWebSocketClient()},
@@ -66,8 +63,11 @@ protected Class<?>[] getAnnotatedConfigClasses() {
6663
return new Class<?>[] {TestConfig.class};
6764
}
6865

69-
@Test
70-
public void subProtocolNegotiation() throws Exception {
66+
67+
@ParameterizedWebSocketTest
68+
void subProtocolNegotiation(WebSocketTestServer server, WebSocketClient webSocketClient, TestInfo testInfo) throws Exception {
69+
super.setup(server, webSocketClient, testInfo);
70+
7171
WebSocketHttpHeaders headers = new WebSocketHttpHeaders();
7272
headers.setSecWebSocketProtocol("foo");
7373
URI url = new URI(getWsBaseUrl() + "/ws");
@@ -76,8 +76,10 @@ public void subProtocolNegotiation() throws Exception {
7676
session.close();
7777
}
7878

79-
@Test // SPR-12727
80-
public void unsolicitedPongWithEmptyPayload() throws Exception {
79+
@ParameterizedWebSocketTest // SPR-12727
80+
void unsolicitedPongWithEmptyPayload(WebSocketTestServer server, WebSocketClient webSocketClient, TestInfo testInfo) throws Exception {
81+
super.setup(server, webSocketClient, testInfo);
82+
8183
String url = getWsBaseUrl() + "/ws";
8284
WebSocketSession session = this.webSocketClient.doHandshake(new AbstractWebSocketHandler() {}, url).get();
8385

spring-websocket/src/test/java/org/springframework/web/socket/adapter/jetty/JettyWebSocketHandlerAdapterTests.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
import org.eclipse.jetty.websocket.api.Session;
2020
import org.eclipse.jetty.websocket.api.UpgradeRequest;
2121
import org.eclipse.jetty.websocket.api.UpgradeResponse;
22-
import org.junit.Before;
23-
import org.junit.Test;
22+
import org.junit.jupiter.api.BeforeEach;
23+
import org.junit.jupiter.api.Test;
2424
import org.mockito.Mockito;
2525

2626
import org.springframework.web.socket.CloseStatus;
@@ -46,7 +46,7 @@ public class JettyWebSocketHandlerAdapterTests {
4646
private Session session;
4747

4848

49-
@Before
49+
@BeforeEach
5050
public void setup() {
5151
this.session = mock(Session.class);
5252
given(this.session.getUpgradeRequest()).willReturn(Mockito.mock(UpgradeRequest.class));

spring-websocket/src/test/java/org/springframework/web/socket/adapter/jetty/JettyWebSocketSessionTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
import org.eclipse.jetty.websocket.api.Session;
2323
import org.eclipse.jetty.websocket.api.UpgradeRequest;
2424
import org.eclipse.jetty.websocket.api.UpgradeResponse;
25-
import org.junit.Test;
25+
import org.junit.jupiter.api.Test;
2626
import org.mockito.Mockito;
2727

2828
import org.springframework.web.socket.handler.TestPrincipal;

spring-websocket/src/test/java/org/springframework/web/socket/adapter/standard/ConvertingEncoderDecoderSupportTests.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@
2222
import javax.websocket.EncodeException;
2323
import javax.websocket.Encoder;
2424

25-
import org.junit.After;
26-
import org.junit.Before;
27-
import org.junit.Test;
25+
import org.junit.jupiter.api.AfterEach;
26+
import org.junit.jupiter.api.BeforeEach;
27+
import org.junit.jupiter.api.Test;
2828

2929
import org.springframework.beans.factory.annotation.Autowired;
3030
import org.springframework.context.annotation.Bean;
@@ -62,12 +62,12 @@ public class ConvertingEncoderDecoderSupportTests {
6262
private MyType myType = new MyType("test");
6363

6464

65-
@Before
65+
@BeforeEach
6666
public void setup() {
6767
setup(Config.class);
6868
}
6969

70-
@After
70+
@AfterEach
7171
public void teardown() {
7272
ContextLoaderTestUtils.setCurrentWebApplicationContext(null);
7373
}

spring-websocket/src/test/java/org/springframework/web/socket/adapter/standard/StandardWebSocketHandlerAdapterTests.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@
2222
import javax.websocket.MessageHandler;
2323
import javax.websocket.Session;
2424

25-
import org.junit.Before;
26-
import org.junit.Test;
25+
import org.junit.jupiter.api.BeforeEach;
26+
import org.junit.jupiter.api.Test;
2727

2828
import org.springframework.web.socket.CloseStatus;
2929
import org.springframework.web.socket.WebSocketHandler;
@@ -51,7 +51,7 @@ public class StandardWebSocketHandlerAdapterTests {
5151
private Session session;
5252

5353

54-
@Before
54+
@BeforeEach
5555
public void setup() {
5656
this.session = mock(Session.class);
5757
this.webSocketHandler = mock(WebSocketHandler.class);

spring-websocket/src/test/java/org/springframework/web/socket/adapter/standard/StandardWebSocketSessionTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
import java.util.Map;
2121
import javax.websocket.Session;
2222

23-
import org.junit.Test;
23+
import org.junit.jupiter.api.Test;
2424
import org.mockito.Mockito;
2525

2626
import org.springframework.http.HttpHeaders;

0 commit comments

Comments
 (0)