File tree 2 files changed +24
-8
lines changed
maven-surefire-common/src
main/java/org/apache/maven/plugin/surefire/extensions
test/java/org/apache/maven/surefire/extensions
2 files changed +24
-8
lines changed Original file line number Diff line number Diff line change 25
25
import java .net .InetAddress ;
26
26
import java .net .InetSocketAddress ;
27
27
import java .net .SocketOption ;
28
+ import java .net .URI ;
29
+ import java .net .URISyntaxException ;
28
30
import java .nio .Buffer ;
29
31
import java .nio .ByteBuffer ;
30
32
import java .nio .channels .AsynchronousServerSocketChannel ;
@@ -112,7 +114,19 @@ public void tryConnectToClient() {
112
114
113
115
@ Override
114
116
public String getForkNodeConnectionString () {
115
- return "tcp://" + localHost + ":" + localPort + (isBlank (sessionId ) ? "" : "?sessionId=" + sessionId );
117
+ try {
118
+ URI uri = new URI (
119
+ "tcp" ,
120
+ null ,
121
+ localHost ,
122
+ localPort ,
123
+ null ,
124
+ isBlank (sessionId ) ? null : "sessionId=" + sessionId ,
125
+ null );
126
+ return uri .toASCIIString ();
127
+ } catch (URISyntaxException e ) {
128
+ throw new IllegalStateException (e );
129
+ }
116
130
}
117
131
118
132
@ Override
Original file line number Diff line number Diff line change @@ -121,14 +121,16 @@ public Object getConsoleLock() {
121
121
assertThat (channel .getCountdownCloseablePermits ()).isEqualTo (3 );
122
122
123
123
String localHost = InetAddress .getLoopbackAddress ().getHostAddress ();
124
- assertThat (channel .getForkNodeConnectionString ())
125
- .startsWith ("tcp://" + localHost + ":" )
126
- .isNotEqualTo ("tcp://" + localHost + ":" )
127
- .endsWith ("?sessionId=" + sessionId );
128
-
129
- URI uri = new URI (channel .getForkNodeConnectionString ());
130
-
124
+ String connectionString = channel .getForkNodeConnectionString ();
125
+ URI uri = new URI (connectionString );
126
+ assertThat (uri .getScheme ()).isEqualTo ("tcp" );
127
+ String uriHost = uri .getHost ();
128
+ if (uriHost .startsWith ("[" ) && uriHost .endsWith ("]" )) {
129
+ uriHost = uriHost .substring (1 , uriHost .length () - 1 );
130
+ }
131
+ assertThat (uriHost ).isEqualTo (localHost );
131
132
assertThat (uri .getPort ()).isPositive ();
133
+ assertThat (uri .getQuery ()).isEqualTo ("sessionId=" + sessionId );
132
134
133
135
final TestLessInputStreamBuilder builder = new TestLessInputStreamBuilder ();
134
136
TestLessInputStream commandReader = builder .build ();
You can’t perform that action at this time.
0 commit comments