Skip to content

Commit

Permalink
* Bump jetty-version from 12.0.16 to 12.0.17
Browse files Browse the repository at this point in the history
* Added test case for jetty/jetty.project#12652.

Signed-off-by: Simone Bordet <[email protected]>
  • Loading branch information
sbordet committed Feb 8, 2025
1 parent 7bac19d commit e8dde34
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 14 deletions.
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<jetty-version>12.0.16</jetty-version>
<jetty-version>12.0.17</jetty-version>
<rxjava-version>3.1.10</rxjava-version>
<spring-version>6.2.2</spring-version>
<slf4j-version>2.0.16</slf4j-version>
Expand Down
21 changes: 8 additions & 13 deletions src/test/java/org/eclipse/jetty/reactive/client/AbstractTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
package org.eclipse.jetty.reactive.client;

import java.util.List;

import org.eclipse.jetty.client.HttpClient;
import org.eclipse.jetty.client.HttpClientTransport;
import org.eclipse.jetty.client.transport.HttpClientTransportOverHTTP;
Expand Down Expand Up @@ -77,21 +76,17 @@ public void prepare(String protocol, Handler handler) throws Exception {
}

private ConnectionFactory createServerConnectionFactory(String protocol) {
switch (protocol) {
case "h2c":
return new HTTP2CServerConnectionFactory(httpConfiguration);
default:
return new HttpConnectionFactory(httpConfiguration);
}
return switch (protocol) {
case "h2c" -> new HTTP2CServerConnectionFactory(httpConfiguration);
default -> new HttpConnectionFactory(httpConfiguration);
};
}

private HttpClientTransport createClientTransport(ClientConnector clientConnector, String protocol) {
switch (protocol) {
case "h2c":
return new HttpClientTransportOverHTTP2(new HTTP2Client(clientConnector));
default:
return new HttpClientTransportOverHTTP(clientConnector);
}
return switch (protocol) {
case "h2c" -> new HttpClientTransportOverHTTP2(new HTTP2Client(clientConnector));
default -> new HttpClientTransportOverHTTP(clientConnector);
};
}

@AfterEach
Expand Down
26 changes: 26 additions & 0 deletions src/test/java/org/eclipse/jetty/reactive/client/ReactorTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@
import java.time.Duration;
import java.util.Random;
import java.util.concurrent.TimeoutException;
import org.eclipse.jetty.http.HttpHeader;
import org.eclipse.jetty.http.HttpStatus;
import org.eclipse.jetty.io.Content;
import org.eclipse.jetty.server.Handler;
import org.eclipse.jetty.server.Request;
Expand All @@ -31,6 +33,7 @@
import org.springframework.http.client.reactive.JettyClientHttpConnector;
import org.springframework.web.reactive.function.client.WebClient;
import reactor.core.publisher.Hooks;
import reactor.core.publisher.Mono;

import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals;
Expand Down Expand Up @@ -95,4 +98,27 @@ public boolean handle(Request request, Response response, Callback callback) thr

assertEquals(timeoutResult, responseContent);
}

@ParameterizedTest
@MethodSource("protocols")
public void test401(String protocol) throws Exception {
prepare(protocol, new Handler.Abstract()
{
@Override
public boolean handle(Request request, Response response, Callback callback) {
response.setStatus(HttpStatus.UNAUTHORIZED_401);
response.getHeaders().add(HttpHeader.WWW_AUTHENTICATE, "Basic realm=\"test\"");
callback.succeeded();
return true;
}
});

var request = httpClient().newRequest(uri());
ReactiveRequest reactiveRequest = ReactiveRequest.newBuilder(request).abortOnCancel(true).build();
Mono<ReactiveResponse> responseMono = Mono.fromDirect(reactiveRequest.response());
ReactiveResponse reactiveResponse = responseMono.block(Duration.ofSeconds(5));

assertNotNull(reactiveResponse);
assertEquals(HttpStatus.UNAUTHORIZED_401, reactiveResponse.getStatus());
}
}

0 comments on commit e8dde34

Please sign in to comment.