summaryrefslogtreecommitdiffstats
path: root/container-core/src/test/java/com/yahoo/jdisc/http/server
diff options
context:
space:
mode:
Diffstat (limited to 'container-core/src/test/java/com/yahoo/jdisc/http/server')
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/AccessLogRequestLogTest.java18
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectionThrottlerTest.java10
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectorFactoryTest.java16
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ErrorResponseContentCreatorTest.java28
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ExceptionWrapperTest.java8
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/FilterTestCase.java56
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpRequestFactoryTest.java20
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpResponseStatisticsCollectorTest.java18
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerConformanceTest.java12
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerTest.java225
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/JDiscHttpServletTest.java20
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/SimpleHttpClient.java9
-rw-r--r--container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/SslHandshakeFailedListenerTest.java6
13 files changed, 221 insertions, 225 deletions
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/AccessLogRequestLogTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/AccessLogRequestLogTest.java
index 65f871e47ea..766c7918882 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/AccessLogRequestLogTest.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/AccessLogRequestLogTest.java
@@ -7,7 +7,7 @@ import com.yahoo.container.logging.RequestLogEntry;
import com.yahoo.jdisc.http.ServerConfig;
import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.Response;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import java.util.List;
import java.util.Optional;
@@ -16,8 +16,8 @@ import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.CoreMatchers.nullValue;
import static org.hamcrest.MatcherAssert.assertThat;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
/**
* @author Oyvind Bakksjo
@@ -25,7 +25,7 @@ import static org.junit.Assert.assertTrue;
*/
public class AccessLogRequestLogTest {
@Test
- public void requireThatQueryWithUnquotedSpecialCharactersIsHandled() {
+ void requireThatQueryWithUnquotedSpecialCharactersIsHandled() {
Request jettyRequest = createRequestBuilder()
.uri("http", "localhost", 12345, "/search/", "query=year:>2010")
.build();
@@ -39,7 +39,7 @@ public class AccessLogRequestLogTest {
}
@Test
- public void requireThatDoubleQuotingIsNotPerformed() {
+ void requireThatDoubleQuotingIsNotPerformed() {
String path = "/search/";
String query = "query=year%252010+%3B&customParameter=something";
Request jettyRequest = createRequestBuilder()
@@ -56,7 +56,7 @@ public class AccessLogRequestLogTest {
}
@Test
- public void raw_path_and_query_are_set_from_request() {
+ void raw_path_and_query_are_set_from_request() {
String rawPath = "//search/";
String rawQuery = "q=%%2";
Request jettyRequest = createRequestBuilder()
@@ -73,7 +73,7 @@ public class AccessLogRequestLogTest {
}
@Test
- public void verify_x_forwarded_for_precedence () {
+ void verify_x_forwarded_for_precedence() {
Request jettyRequest = createRequestBuilder()
.uri("http", "localhost", 12345, "//search/", "q=%%2")
.header("x-forwarded-for", List.of("1.2.3.4"))
@@ -87,7 +87,7 @@ public class AccessLogRequestLogTest {
}
@Test
- public void verify_x_forwarded_port_precedence () {
+ void verify_x_forwarded_port_precedence() {
Request jettyRequest = createRequestBuilder()
.uri("http", "localhost", 12345, "//search/", "q=%%2")
.header("X-Forwarded-Port", List.of("80"))
@@ -101,7 +101,7 @@ public class AccessLogRequestLogTest {
}
@Test
- public void defaults_to_peer_port_if_remote_port_header_is_invalid() {
+ void defaults_to_peer_port_if_remote_port_header_is_invalid() {
Request jettyRequest = createRequestBuilder()
.uri("http", "localhost", 12345, "/search/", null)
.header("X-Forwarded-Port", List.of("8o8o"))
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectionThrottlerTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectionThrottlerTest.java
index add7e458fbd..a65231db2b7 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectionThrottlerTest.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectionThrottlerTest.java
@@ -6,11 +6,11 @@ import org.eclipse.jetty.server.AbstractConnector;
import org.eclipse.jetty.util.component.AbstractLifeCycle;
import org.eclipse.jetty.util.statistic.RateStatistic;
import org.eclipse.jetty.util.thread.Scheduler;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import java.util.concurrent.TimeUnit;
-import static org.junit.Assert.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.mockito.ArgumentMatchers.anyBoolean;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
@@ -23,14 +23,14 @@ import static org.mockito.internal.verification.VerificationModeFactory.times;
public class ConnectionThrottlerTest {
@Test
- public void throttles_when_any_resource_check_exceeds_configured_threshold() {
+ void throttles_when_any_resource_check_exceeds_configured_threshold() {
Runtime runtime = mock(Runtime.class);
when(runtime.maxMemory()).thenReturn(100l);
RateStatistic rateStatistic = new RateStatistic(1, TimeUnit.HOURS);
MockScheduler scheduler = new MockScheduler();
ConnectorConfig.Throttling config = new ConnectorConfig.Throttling(new ConnectorConfig.Throttling.Builder()
- .maxHeapUtilization(0.8)
- .maxAcceptRate(1));
+ .maxHeapUtilization(0.8)
+ .maxAcceptRate(1));
AbstractConnector connector = mock(AbstractConnector.class);
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectorFactoryTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectorFactoryTest.java
index b47df9d5931..1ff2783cc53 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectorFactoryTest.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ConnectorFactoryTest.java
@@ -8,9 +8,9 @@ import com.yahoo.jdisc.http.ssl.impl.ConfiguredSslContextFactoryProvider;
import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.handler.AbstractHandler;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -18,7 +18,7 @@ import java.io.IOException;
import java.util.Map;
import static org.hamcrest.CoreMatchers.equalTo;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
/**
* @author Einar M R Rosenvinge
@@ -28,12 +28,12 @@ public class ConnectorFactoryTest {
private Server server;
- @Before
+ @BeforeEach
public void createServer() {
server = new Server();
}
- @After
+ @AfterEach
public void stopServer() {
try {
server.stop();
@@ -44,7 +44,7 @@ public class ConnectorFactoryTest {
}
@Test
- public void requireThatServerCanBindChannel() throws Exception {
+ void requireThatServerCanBindChannel() throws Exception {
ConnectorConfig config = new ConnectorConfig(new ConnectorConfig.Builder());
ConnectorFactory factory = createConnectorFactory(config);
JDiscServerConnector connector = createConnectorFromFactory(factory);
@@ -59,7 +59,7 @@ public class ConnectorFactoryTest {
}
@Test
- public void constructed_connector_is_based_on_jdisc_connector_config() {
+ void constructed_connector_is_based_on_jdisc_connector_config() {
ConnectorConfig config = new ConnectorConfig.Builder()
.idleTimeout(25)
.name("my-server-name")
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ErrorResponseContentCreatorTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ErrorResponseContentCreatorTest.java
index 796adebb5e8..8b18c8cf09d 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ErrorResponseContentCreatorTest.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ErrorResponseContentCreatorTest.java
@@ -2,12 +2,12 @@
package com.yahoo.jdisc.http.server.jetty;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import javax.servlet.http.HttpServletResponse;
import java.nio.charset.StandardCharsets;
-import static org.junit.Assert.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertEquals;
/**
@@ -16,20 +16,20 @@ import static org.junit.Assert.assertEquals;
public class ErrorResponseContentCreatorTest {
@Test
- public void response_content_matches_expected_string() {
+ void response_content_matches_expected_string() {
String expectedHtml =
"<html>\n" +
- "<head>\n" +
- "<meta http-equiv=\"Content-Type\" content=\"text/html;charset=ISO-8859-1\"/>\n" +
- "<title>Error 200</title>\n" +
- "</head>\n" +
- "<body>\n" +
- "<h2>HTTP ERROR: 200</h2>\n" +
- "<p>Problem accessing http://foo.bar. Reason:\n" +
- "<pre> My custom error message</pre></p>\n" +
- "<hr/>\n" +
- "</body>\n" +
- "</html>\n";
+ "<head>\n" +
+ "<meta http-equiv=\"Content-Type\" content=\"text/html;charset=ISO-8859-1\"/>\n" +
+ "<title>Error 200</title>\n" +
+ "</head>\n" +
+ "<body>\n" +
+ "<h2>HTTP ERROR: 200</h2>\n" +
+ "<p>Problem accessing http://foo.bar. Reason:\n" +
+ "<pre> My custom error message</pre></p>\n" +
+ "<hr/>\n" +
+ "</body>\n" +
+ "</html>\n";
ErrorResponseContentCreator c = new ErrorResponseContentCreator();
byte[] rawContent = c.createErrorContent(
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ExceptionWrapperTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ExceptionWrapperTest.java
index 153d3f34899..9512dc22a93 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ExceptionWrapperTest.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/ExceptionWrapperTest.java
@@ -1,7 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.jdisc.http.server.jetty;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import static org.hamcrest.CoreMatchers.equalTo;
import static org.hamcrest.MatcherAssert.assertThat;
@@ -15,7 +15,7 @@ import static org.hamcrest.MatcherAssert.assertThat;
public class ExceptionWrapperTest {
@Test
- public final void requireNoMessageIsOK() {
+ final void requireNoMessageIsOK() {
final Throwable t = new Throwable();
final ExceptionWrapper e = new ExceptionWrapper(t);
final String expected = "Throwable() at com.yahoo.jdisc.http.server.jetty.ExceptionWrapperTest(ExceptionWrapperTest.java:19)";
@@ -24,7 +24,7 @@ public class ExceptionWrapperTest {
}
@Test
- public final void requireAllWrappedLevelsShowUp() {
+ final void requireAllWrappedLevelsShowUp() {
final Throwable t0 = new Throwable("t0");
final Throwable t1 = new Throwable("t1", t0);
final Throwable t2 = new Throwable("t2", t1);
@@ -37,7 +37,7 @@ public class ExceptionWrapperTest {
}
@Test
- public final void requireMixOfMessageAndNoMessageWorks() {
+ final void requireMixOfMessageAndNoMessageWorks() {
final Throwable t0 = new Throwable("t0");
final Throwable t1 = new Throwable(t0);
final Throwable t2 = new Throwable("t2", t1);
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/FilterTestCase.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/FilterTestCase.java
index c975f7c17c3..ce49926c58b 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/FilterTestCase.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/FilterTestCase.java
@@ -29,7 +29,7 @@ import com.yahoo.jdisc.http.filter.chain.RequestFilterChain;
import com.yahoo.jdisc.http.filter.chain.ResponseFilterChain;
import com.yahoo.jdisc.http.server.jetty.testutils.ConnectorFactoryRegistryModule;
import org.assertj.core.api.Assertions;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import org.mockito.ArgumentCaptor;
import java.io.IOException;
@@ -58,7 +58,7 @@ import static org.mockito.Mockito.when;
*/
public class FilterTestCase {
@Test
- public void requireThatRequestFilterIsNotRunOnUnboundPath() throws Exception {
+ void requireThatRequestFilterIsNotRunOnUnboundPath() throws Exception {
RequestFilterMockBase filter = mock(RequestFilterMockBase.class);
FilterBindings filterBindings = new FilterBindings.Builder()
.addRequestFilter("my-request-filter", filter)
@@ -76,7 +76,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatRequestFilterIsRunOnBoundPath() throws Exception {
+ void requireThatRequestFilterIsRunOnBoundPath() throws Exception {
final RequestFilter filter = mock(RequestFilterMockBase.class);
FilterBindings filterBindings = new FilterBindings.Builder()
.addRequestFilter("my-request-filter", filter)
@@ -94,7 +94,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatRequestFilterChangesAreSeenByRequestHandler() throws Exception {
+ void requireThatRequestFilterChangesAreSeenByRequestHandler() throws Exception {
final RequestFilter filter = new HeaderRequestFilter("foo", "bar");
FilterBindings filterBindings = new FilterBindings.Builder()
.addRequestFilter("my-request-filter", filter)
@@ -112,7 +112,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatRequestFilterCanRespond() throws Exception {
+ void requireThatRequestFilterCanRespond() throws Exception {
FilterBindings filterBindings = new FilterBindings.Builder()
.addRequestFilter("my-request-filter", new RespondForbiddenFilter())
.addRequestFilterBinding("my-request-filter", "http://*/*")
@@ -128,7 +128,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatFilterCanHaveNullCompletionHandler() throws Exception {
+ void requireThatFilterCanHaveNullCompletionHandler() throws Exception {
final int responseStatus = Response.Status.OK;
final String responseMessage = "Excellent";
FilterBindings filterBindings = new FilterBindings.Builder()
@@ -148,7 +148,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatRequestFilterExecutionIsExceptionSafe() throws Exception {
+ void requireThatRequestFilterExecutionIsExceptionSafe() throws Exception {
FilterBindings filterBindings = new FilterBindings.Builder()
.addRequestFilter("my-request-filter", new ThrowingRequestFilter())
.addRequestFilterBinding("my-request-filter", "http://*/*")
@@ -164,7 +164,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatResponseFilterIsNotRunOnUnboundPath() throws Exception {
+ void requireThatResponseFilterIsNotRunOnUnboundPath() throws Exception {
final ResponseFilter filter = mock(ResponseFilterMockBase.class);
FilterBindings filterBindings = new FilterBindings.Builder()
.addResponseFilter("my-response-filter", filter)
@@ -182,7 +182,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatResponseFilterIsRunOnBoundPath() throws Exception {
+ void requireThatResponseFilterIsRunOnBoundPath() throws Exception {
final ResponseFilter filter = mock(ResponseFilterMockBase.class);
FilterBindings filterBindings = new FilterBindings.Builder()
.addResponseFilter("my-response-filter", filter)
@@ -200,7 +200,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatResponseFilterChangesAreWrittenToResponse() throws Exception {
+ void requireThatResponseFilterChangesAreWrittenToResponse() throws Exception {
FilterBindings filterBindings = new FilterBindings.Builder()
.addResponseFilter("my-response-filter", new HeaderResponseFilter("foo", "bar"))
.addResponseFilterBinding("my-response-filter", "http://*/*")
@@ -217,7 +217,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatResponseFilterExecutionIsExceptionSafe() throws Exception {
+ void requireThatResponseFilterExecutionIsExceptionSafe() throws Exception {
FilterBindings filterBindings = new FilterBindings.Builder()
.addResponseFilter("my-response-filter", new ThrowingResponseFilter())
.addResponseFilterBinding("my-response-filter", "http://*/*")
@@ -233,7 +233,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatRequestFilterAndResponseFilterCanBindToSamePath() throws Exception {
+ void requireThatRequestFilterAndResponseFilterCanBindToSamePath() throws Exception {
final RequestFilter requestFilter = mock(RequestFilterMockBase.class);
final ResponseFilter responseFilter = mock(ResponseFilterMockBase.class);
final String uriPattern = "http://*/*";
@@ -256,7 +256,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatResponseFromRequestFilterGoesThroughResponseFilter() throws Exception {
+ void requireThatResponseFromRequestFilterGoesThroughResponseFilter() throws Exception {
FilterBindings filterBindings = new FilterBindings.Builder()
.addRequestFilter("my-request-filter", new RespondForbiddenFilter())
.addRequestFilterBinding("my-request-filter", "http://*/*")
@@ -276,7 +276,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatRequestFilterChainRetainsFilters() {
+ void requireThatRequestFilterChainRetainsFilters() {
final RequestFilter requestFilter1 = mock(RequestFilter.class);
final RequestFilter requestFilter2 = mock(RequestFilter.class);
@@ -296,7 +296,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatRequestFilterChainIsRun() throws Exception {
+ void requireThatRequestFilterChainIsRun() throws Exception {
final RequestFilter requestFilter1 = mock(RequestFilter.class);
final RequestFilter requestFilter2 = mock(RequestFilter.class);
final RequestFilter requestFilterChain = RequestFilterChain.newInstance(requestFilter1, requestFilter2);
@@ -308,7 +308,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatRequestFilterChainCallsFilterWithOriginalRequest() throws Exception {
+ void requireThatRequestFilterChainCallsFilterWithOriginalRequest() throws Exception {
final RequestFilter requestFilter = mock(RequestFilter.class);
final RequestFilter requestFilterChain = RequestFilterChain.newInstance(requestFilter);
final HttpRequest request = mock(HttpRequest.class);
@@ -325,7 +325,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatRequestFilterChainCallsFilterWithOriginalResponseHandler() throws Exception {
+ void requireThatRequestFilterChainCallsFilterWithOriginalResponseHandler() throws Exception {
final RequestFilter requestFilter = mock(RequestFilter.class);
final RequestFilter requestFilterChain = RequestFilterChain.newInstance(requestFilter);
final HttpRequest request = null;
@@ -342,7 +342,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatRequestFilterCanTerminateChain() throws Exception {
+ void requireThatRequestFilterCanTerminateChain() throws Exception {
final RequestFilter requestFilter1 = new RespondForbiddenFilter();
final RequestFilter requestFilter2 = mock(RequestFilter.class);
final RequestFilter requestFilterChain = RequestFilterChain.newInstance(requestFilter1, requestFilter2);
@@ -360,7 +360,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatResponseFilterChainRetainsFilters() {
+ void requireThatResponseFilterChainRetainsFilters() {
final ResponseFilter responseFilter1 = mock(ResponseFilter.class);
final ResponseFilter responseFilter2 = mock(ResponseFilter.class);
@@ -380,7 +380,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatResponseFilterChainIsRun() {
+ void requireThatResponseFilterChainIsRun() {
final ResponseFilter responseFilter1 = new ResponseHeaderFilter("foo", "bar");
final ResponseFilter responseFilter2 = mock(ResponseFilter.class);
final int statusCode = Response.Status.BAD_GATEWAY;
@@ -399,7 +399,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatDefaultRequestFilterChainIsRunIfNoOtherFilterChainMatches() throws IOException, InterruptedException {
+ void requireThatDefaultRequestFilterChainIsRunIfNoOtherFilterChainMatches() throws IOException, InterruptedException {
RequestFilter filterWithBinding = mock(RequestFilter.class);
RequestFilter defaultFilter = mock(RequestFilter.class);
String defaultFilterId = "default-request-filter";
@@ -422,7 +422,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatDefaultResponseFilterChainIsRunIfNoOtherFilterChainMatches() throws IOException, InterruptedException {
+ void requireThatDefaultResponseFilterChainIsRunIfNoOtherFilterChainMatches() throws IOException, InterruptedException {
ResponseFilter filterWithBinding = mock(ResponseFilter.class);
ResponseFilter defaultFilter = mock(ResponseFilter.class);
String defaultFilterId = "default-response-filter";
@@ -445,7 +445,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatRequestFilterWithBindingMatchHasPrecedenceOverDefaultFilter() throws IOException, InterruptedException {
+ void requireThatRequestFilterWithBindingMatchHasPrecedenceOverDefaultFilter() throws IOException, InterruptedException {
RequestFilterMockBase filterWithBinding = mock(RequestFilterMockBase.class);
RequestFilterMockBase defaultFilter = mock(RequestFilterMockBase.class);
String defaultFilterId = "default-request-filter";
@@ -468,7 +468,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatResponseFilterWithBindingMatchHasPrecedenceOverDefaultFilter() throws IOException, InterruptedException {
+ void requireThatResponseFilterWithBindingMatchHasPrecedenceOverDefaultFilter() throws IOException, InterruptedException {
ResponseFilter filterWithBinding = mock(ResponseFilter.class);
ResponseFilter defaultFilter = mock(ResponseFilter.class);
String defaultFilterId = "default-response-filter";
@@ -491,7 +491,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatMetricAreReported() throws IOException, InterruptedException {
+ void requireThatMetricAreReported() throws IOException, InterruptedException {
FilterBindings filterBindings = new FilterBindings.Builder()
.addRequestFilter("my-request-filter", mock(RequestFilter.class))
.addRequestFilterBinding("my-request-filter", "http://*/*")
@@ -514,7 +514,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatStrictFilteringRejectsRequestsNotMatchingFilterChains() throws IOException {
+ void requireThatStrictFilteringRejectsRequestsNotMatchingFilterChains() throws IOException {
RequestFilter filter = mock(RequestFilter.class);
FilterBindings filterBindings = new FilterBindings.Builder()
.addRequestFilter("my-request-filter", filter)
@@ -531,7 +531,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatRequestHandlerSpecIsAvailableThroughDelegate() throws IOException, InterruptedException {
+ void requireThatRequestHandlerSpecIsAvailableThroughDelegate() throws IOException, InterruptedException {
MyRequestHandler requestHandler = new MyHttpRequestHandler();
MyDelegatedHandler delegateHandler1 = new MyDelegatedHandler(requestHandler);
MyDelegatedHandler delegateHandler2 = new MyDelegatedHandler(delegateHandler1);
@@ -539,7 +539,7 @@ public class FilterTestCase {
}
@Test
- public void requireThatRequestHandlerSpecIsAvailable() throws IOException, InterruptedException {
+ void requireThatRequestHandlerSpecIsAvailable() throws IOException, InterruptedException {
MyRequestHandler requestHandler = new MyHttpRequestHandler();
requestHandlerSpecTest(requestHandler);
}
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpRequestFactoryTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpRequestFactoryTest.java
index d1ba4a4d190..a23a3505bcb 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpRequestFactoryTest.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpRequestFactoryTest.java
@@ -8,7 +8,7 @@ import com.yahoo.jdisc.Response;
import com.yahoo.jdisc.handler.RequestHandler;
import com.yahoo.jdisc.http.HttpRequest;
import com.yahoo.jdisc.service.CurrentContainer;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import javax.servlet.http.HttpServletRequest;
import java.net.URI;
@@ -16,9 +16,7 @@ import java.net.URI;
import static org.hamcrest.CoreMatchers.equalTo;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.fail;
+import static org.junit.jupiter.api.Assertions.*;
/**
* @author Steinar Knutsen
@@ -29,7 +27,7 @@ public class HttpRequestFactoryTest {
private static final int LOCAL_PORT = 80;
@Test
- public void testLegalURIs() {
+ void testLegalURIs() {
{
URI uri = HttpRequestFactory.getUri(createMockRequest("https", "host", null, null));
assertEquals("https", uri.getScheme());
@@ -68,7 +66,7 @@ public class HttpRequestFactoryTest {
}
@Test
- public void testIllegalQuery() {
+ void testIllegalQuery() {
try {
HttpRequestFactory.newJDiscRequest(
new MockContainer(),
@@ -80,7 +78,7 @@ public class HttpRequestFactoryTest {
}
@Test
- public final void illegal_host_throws_requestexception1() {
+ final void illegal_host_throws_requestexception1() {
try {
HttpRequestFactory.newJDiscRequest(
new MockContainer(),
@@ -92,7 +90,7 @@ public class HttpRequestFactoryTest {
}
@Test
- public final void illegal_host_throws_requestexception2() {
+ final void illegal_host_throws_requestexception2() {
try {
HttpRequestFactory.newJDiscRequest(
new MockContainer(),
@@ -104,7 +102,7 @@ public class HttpRequestFactoryTest {
}
@Test
- public final void illegal_host_throws_requestexception3() {
+ final void illegal_host_throws_requestexception3() {
try {
HttpRequestFactory.newJDiscRequest(
new MockContainer(),
@@ -116,7 +114,7 @@ public class HttpRequestFactoryTest {
}
@Test
- public final void illegal_unicode_in_query_throws_requestexception() {
+ final void illegal_unicode_in_query_throws_requestexception() {
try {
HttpRequestFactory.newJDiscRequest(
new MockContainer(),
@@ -129,7 +127,7 @@ public class HttpRequestFactoryTest {
}
@Test
- public void request_uri_uses_local_port() {
+ void request_uri_uses_local_port() {
HttpRequest request = HttpRequestFactory.newJDiscRequest(
new MockContainer(),
createMockRequest("https", "example.com", "/search", "query=value"));
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpResponseStatisticsCollectorTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpResponseStatisticsCollectorTest.java
index 89908e6d56b..1f65bc4f582 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpResponseStatisticsCollectorTest.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpResponseStatisticsCollectorTest.java
@@ -16,8 +16,8 @@ import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.handler.AbstractHandler;
import org.eclipse.jetty.util.Callback;
-import org.junit.Before;
-import org.junit.Test;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
@@ -42,7 +42,7 @@ public class HttpResponseStatisticsCollectorTest {
private int httpResponseCode = 500;
@Test
- public void statistics_are_aggregated_by_category() {
+ void statistics_are_aggregated_by_category() {
testRequest("http", 300, "GET");
testRequest("http", 301, "GET");
testRequest("http", 200, "GET");
@@ -54,7 +54,7 @@ public class HttpResponseStatisticsCollectorTest {
}
@Test
- public void statistics_are_grouped_by_http_method_and_scheme() {
+ void statistics_are_grouped_by_http_method_and_scheme() {
testRequest("http", 200, "GET");
testRequest("http", 200, "PUT");
testRequest("http", 200, "POST");
@@ -77,7 +77,7 @@ public class HttpResponseStatisticsCollectorTest {
@Test
@SuppressWarnings("removal")
- public void statistics_include_grouped_and_single_statuscodes() {
+ void statistics_include_grouped_and_single_statuscodes() {
testRequest("http", 401, "GET");
testRequest("http", 404, "GET");
testRequest("http", 403, "GET");
@@ -90,7 +90,7 @@ public class HttpResponseStatisticsCollectorTest {
}
@Test
- public void retrieving_statistics_resets_the_counters() {
+ void retrieving_statistics_resets_the_counters() {
testRequest("http", 200, "GET");
testRequest("http", 200, "GET");
@@ -104,7 +104,7 @@ public class HttpResponseStatisticsCollectorTest {
}
@Test
- public void statistics_include_request_type_dimension() {
+ void statistics_include_request_type_dimension() {
testRequest("http", 200, "GET", "/search");
testRequest("http", 200, "POST", "/search");
testRequest("http", 200, "POST", "/feed");
@@ -123,14 +123,14 @@ public class HttpResponseStatisticsCollectorTest {
}
@Test
- public void request_type_can_be_set_explicitly() {
+ void request_type_can_be_set_explicitly() {
testRequest("http", 200, "GET", "/search", com.yahoo.jdisc.Request.RequestType.WRITE);
var stats = collector.takeStatistics();
assertStatisticsEntry(stats, "http", "GET", MetricDefinitions.RESPONSES_2XX, "write", 200, 1L);
}
- @Before
+ @BeforeEach
public void initializeCollector() throws Exception {
Server server = new Server();
connector = new AbstractConnector(server, null, null, null, 0) {
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerConformanceTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerConformanceTest.java
index baf198dde5d..7cce9f2a9ff 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerConformanceTest.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerConformanceTest.java
@@ -21,9 +21,9 @@ import org.apache.http.util.EntityUtils;
import org.hamcrest.Description;
import org.hamcrest.Matcher;
import org.hamcrest.TypeSafeMatcher;
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Test;
import java.io.IOException;
import java.net.URI;
@@ -71,7 +71,7 @@ public class HttpServerConformanceTest extends ServerProviderConformanceTest {
* Reduce logging of every stack trace for {@link ServerProviderConformanceTest.ConformanceException} thrown.
* This makes the log more readable and the test faster as well.
*/
- @BeforeClass
+ @BeforeAll
public static void reduceExcessiveLogging() {
httpRequestDispatchLoggerOriginalLevel = httpRequestDispatchLogger.getLevel();
httpRequestDispatchLogger.setLevel(Level.SEVERE);
@@ -79,7 +79,7 @@ public class HttpServerConformanceTest extends ServerProviderConformanceTest {
executorService = Executors.newSingleThreadExecutor();
}
- @AfterClass
+ @AfterAll
public static void restoreExcessiveLogging() throws IOException, InterruptedException {
httpRequestDispatchLogger.setLevel(httpRequestDispatchLoggerOriginalLevel);
httpClient.close();
@@ -87,7 +87,7 @@ public class HttpServerConformanceTest extends ServerProviderConformanceTest {
executorService.awaitTermination(30, TimeUnit.SECONDS);
}
- @AfterClass
+ @AfterAll
public static void reportDiagnostics() {
System.out.println(
"After " + HttpServerConformanceTest.class.getSimpleName()
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerTest.java
index 3f84bd3d632..5814ab230bd 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerTest.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/HttpServerTest.java
@@ -38,12 +38,13 @@ import org.apache.hc.core5.http.ConnectionClosedException;
import org.apache.hc.core5.http.ContentType;
import org.assertj.core.api.Assertions;
import org.eclipse.jetty.server.handler.AbstractHandlerContainer;
-import org.junit.Ignore;
-import org.junit.Rule;
-import org.junit.Test;
-import org.junit.rules.TemporaryFolder;
+import org.junit.jupiter.api.Disabled;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.io.TempDir;
import javax.net.ssl.SSLContext;
+
+import java.io.File;
import java.io.IOException;
import java.net.BindException;
import java.net.URI;
@@ -88,9 +89,7 @@ import static org.hamcrest.CoreMatchers.instanceOf;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.startsWith;
import static org.hamcrest.MatcherAssert.assertThat;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotEquals;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.*;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.atLeast;
import static org.mockito.Mockito.mock;
@@ -104,18 +103,18 @@ import static org.mockito.Mockito.when;
*/
public class HttpServerTest {
- @Rule
- public TemporaryFolder tmpFolder = new TemporaryFolder();
+ @TempDir
+ public File tmpFolder;
@Test
- public void requireThatServerCanListenToRandomPort() {
+ void requireThatServerCanListenToRandomPort() {
final JettyTestDriver driver = JettyTestDriver.newInstance(mockRequestHandler());
assertNotEquals(0, driver.server().getListenPort());
assertTrue(driver.close());
}
@Test
- public void requireThatServerCanNotListenToBoundPort() {
+ void requireThatServerCanNotListenToBoundPort() {
final JettyTestDriver driver = JettyTestDriver.newInstance(mockRequestHandler());
try {
JettyTestDriver.newConfiguredInstance(
@@ -131,7 +130,7 @@ public class HttpServerTest {
}
@Test
- public void requireThatBindingSetNotFoundReturns404() throws Exception {
+ void requireThatBindingSetNotFoundReturns404() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newConfiguredInstance(
mockRequestHandler(),
new ServerConfig.Builder()
@@ -139,28 +138,28 @@ public class HttpServerTest {
new ConnectorConfig.Builder(),
newBindingSetSelector("unknown"));
driver.client().get("/status.html")
- .expectStatusCode(is(NOT_FOUND))
- .expectContent(containsPattern(Pattern.compile(
- Pattern.quote(BindingSetNotFoundException.class.getName()) +
- ": No binding set named &apos;unknown&apos;\\.\n\tat .+",
- Pattern.DOTALL | Pattern.MULTILINE)));
+ .expectStatusCode(is(NOT_FOUND))
+ .expectContent(containsPattern(Pattern.compile(
+ Pattern.quote(BindingSetNotFoundException.class.getName()) +
+ ": No binding set named &apos;unknown&apos;\\.\n\tat .+",
+ Pattern.DOTALL | Pattern.MULTILINE)));
assertTrue(driver.close());
}
@Test
- public void requireThatTooLongInitLineReturns414() throws Exception {
+ void requireThatTooLongInitLineReturns414() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newConfiguredInstance(
mockRequestHandler(),
new ServerConfig.Builder(),
new ConnectorConfig.Builder()
.requestHeaderSize(1));
driver.client().get("/status.html")
- .expectStatusCode(is(REQUEST_URI_TOO_LONG));
+ .expectStatusCode(is(REQUEST_URI_TOO_LONG));
assertTrue(driver.close());
}
@Test
- public void requireThatAccessLogIsCalledForRequestRejectedByJetty() throws Exception {
+ void requireThatAccessLogIsCalledForRequestRejectedByJetty() throws Exception {
BlockingQueueRequestLog requestLogMock = new BlockingQueueRequestLog();
final JettyTestDriver driver = JettyTestDriver.newConfiguredInstance(
mockRequestHandler(),
@@ -175,15 +174,15 @@ public class HttpServerTest {
}
@Test
- public void requireThatServerCanEcho() throws Exception {
+ void requireThatServerCanEcho() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new EchoRequestHandler());
driver.client().get("/status.html")
- .expectStatusCode(is(OK));
+ .expectStatusCode(is(OK));
assertTrue(driver.close());
}
@Test
- public void requireThatServerCanEchoCompressed() throws Exception {
+ void requireThatServerCanEchoCompressed() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new EchoRequestHandler());
SimpleHttpClient client = driver.newClient(true);
client.get("/status.html")
@@ -192,31 +191,31 @@ public class HttpServerTest {
}
@Test
- public void requireThatServerCanHandleMultipleRequests() throws Exception {
+ void requireThatServerCanHandleMultipleRequests() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new EchoRequestHandler());
driver.client().get("/status.html")
- .expectStatusCode(is(OK));
+ .expectStatusCode(is(OK));
driver.client().get("/status.html")
- .expectStatusCode(is(OK));
+ .expectStatusCode(is(OK));
assertTrue(driver.close());
}
@Test
- public void requireThatFormPostWorks() throws Exception {
+ void requireThatFormPostWorks() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new ParameterPrinterRequestHandler());
final String requestContent = generateContent('a', 30);
final ResponseValidator response =
driver.client().newPost("/status.html")
- .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED)
- .setContent(requestContent)
- .execute();
+ .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED)
+ .setContent(requestContent)
+ .execute();
response.expectStatusCode(is(OK))
.expectContent(startsWith('{' + requestContent + "=[]}"));
assertTrue(driver.close());
}
@Test
- public void requireThatFormPostDoesNotRemoveContentByDefault() throws Exception {
+ void requireThatFormPostDoesNotRemoveContentByDefault() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new ParameterPrinterRequestHandler());
final ResponseValidator response =
driver.client().newPost("/status.html")
@@ -229,7 +228,7 @@ public class HttpServerTest {
}
@Test
- public void requireThatFormPostKeepsContentWhenConfiguredTo() throws Exception {
+ void requireThatFormPostKeepsContentWhenConfiguredTo() throws Exception {
final JettyTestDriver driver = newDriverWithFormPostContentRemoved(new ParameterPrinterRequestHandler(), false);
final ResponseValidator response =
driver.client().newPost("/status.html")
@@ -242,7 +241,7 @@ public class HttpServerTest {
}
@Test
- public void requireThatFormPostRemovesContentWhenConfiguredTo() throws Exception {
+ void requireThatFormPostRemovesContentWhenConfiguredTo() throws Exception {
final JettyTestDriver driver = newDriverWithFormPostContentRemoved(new ParameterPrinterRequestHandler(), true);
final ResponseValidator response =
driver.client().newPost("/status.html")
@@ -255,72 +254,72 @@ public class HttpServerTest {
}
@Test
- public void requireThatFormPostWithCharsetSpecifiedWorks() throws Exception {
+ void requireThatFormPostWithCharsetSpecifiedWorks() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new ParameterPrinterRequestHandler());
final String requestContent = generateContent('a', 30);
final ResponseValidator response =
driver.client().newPost("/status.html")
- .addHeader(X_DISABLE_CHUNKING, "true")
- .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED + ";charset=UTF-8")
- .setContent(requestContent)
- .execute();
+ .addHeader(X_DISABLE_CHUNKING, "true")
+ .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED + ";charset=UTF-8")
+ .setContent(requestContent)
+ .execute();
response.expectStatusCode(is(OK))
.expectContent(startsWith('{' + requestContent + "=[]}"));
assertTrue(driver.close());
}
@Test
- public void requireThatEmptyFormPostWorks() throws Exception {
+ void requireThatEmptyFormPostWorks() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new ParameterPrinterRequestHandler());
final ResponseValidator response =
driver.client().newPost("/status.html")
- .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED)
- .execute();
+ .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED)
+ .execute();
response.expectStatusCode(is(OK))
.expectContent(is("{}"));
assertTrue(driver.close());
}
@Test
- public void requireThatFormParametersAreParsed() throws Exception {
+ void requireThatFormParametersAreParsed() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new ParameterPrinterRequestHandler());
final ResponseValidator response =
driver.client().newPost("/status.html")
- .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED)
- .setContent("a=b&c=d")
- .execute();
+ .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED)
+ .setContent("a=b&c=d")
+ .execute();
response.expectStatusCode(is(OK))
.expectContent(startsWith("{a=[b], c=[d]}"));
assertTrue(driver.close());
}
@Test
- public void requireThatUriParametersAreParsed() throws Exception {
+ void requireThatUriParametersAreParsed() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new ParameterPrinterRequestHandler());
final ResponseValidator response =
driver.client().newPost("/status.html?a=b&c=d")
- .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED)
- .execute();
+ .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED)
+ .execute();
response.expectStatusCode(is(OK))
.expectContent(is("{a=[b], c=[d]}"));
assertTrue(driver.close());
}
@Test
- public void requireThatFormAndUriParametersAreMerged() throws Exception {
+ void requireThatFormAndUriParametersAreMerged() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new ParameterPrinterRequestHandler());
final ResponseValidator response =
driver.client().newPost("/status.html?a=b&c=d1")
- .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED)
- .setContent("c=d2&e=f")
- .execute();
+ .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED)
+ .setContent("c=d2&e=f")
+ .execute();
response.expectStatusCode(is(OK))
.expectContent(startsWith("{a=[b], c=[d1, d2], e=[f]}"));
assertTrue(driver.close());
}
@Test
- public void requireThatFormCharsetIsHonored() throws Exception {
+ void requireThatFormCharsetIsHonored() throws Exception {
final JettyTestDriver driver = newDriverWithFormPostContentRemoved(new ParameterPrinterRequestHandler(), true);
final ResponseValidator response =
driver.client().newPost("/status.html")
@@ -333,7 +332,7 @@ public class HttpServerTest {
}
@Test
- public void requireThatUnknownFormCharsetIsTreatedAsBadRequest() throws Exception {
+ void requireThatUnknownFormCharsetIsTreatedAsBadRequest() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new ParameterPrinterRequestHandler());
final ResponseValidator response =
driver.client().newPost("/status.html")
@@ -343,9 +342,9 @@ public class HttpServerTest {
response.expectStatusCode(is(UNSUPPORTED_MEDIA_TYPE));
assertTrue(driver.close());
}
-
+
@Test
- public void requireThatFormPostWithPercentEncodedContentIsDecoded() throws Exception {
+ void requireThatFormPostWithPercentEncodedContentIsDecoded() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new ParameterPrinterRequestHandler());
final ResponseValidator response =
driver.client().newPost("/status.html")
@@ -358,7 +357,7 @@ public class HttpServerTest {
}
@Test
- public void requireThatFormPostWithThrowingHandlerIsExceptionSafe() throws Exception {
+ void requireThatFormPostWithThrowingHandlerIsExceptionSafe() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new ThrowingHandler());
final ResponseValidator response =
driver.client().newPost("/status.html")
@@ -370,7 +369,7 @@ public class HttpServerTest {
}
@Test
- public void requireThatMultiPostWorks() throws Exception {
+ void requireThatMultiPostWorks() throws Exception {
// This is taken from tcpdump of bug 5433352 and reassembled here to see that httpserver passes things on.
final String startTxtContent = "this is a test for POST.";
final String updaterConfContent
@@ -389,19 +388,19 @@ public class HttpServerTest {
}
@Test
- public void requireThatRequestCookiesAreReceived() throws Exception {
+ void requireThatRequestCookiesAreReceived() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new CookiePrinterRequestHandler());
final ResponseValidator response =
driver.client().newPost("/status.html")
- .addHeader(COOKIE, "foo=bar")
- .execute();
+ .addHeader(COOKIE, "foo=bar")
+ .execute();
response.expectStatusCode(is(OK))
.expectContent(containsString("[foo=bar]"));
assertTrue(driver.close());
}
@Test
- public void requireThatSetCookieHeaderIsCorrect() throws Exception {
+ void requireThatSetCookieHeaderIsCorrect() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new CookieSetterRequestHandler(
new Cookie("foo", "bar")
.setDomain(".localhost")
@@ -409,18 +408,18 @@ public class HttpServerTest {
.setPath("/foopath")
.setSecure(true)));
driver.client().get("/status.html")
- .expectStatusCode(is(OK))
- .expectHeader("Set-Cookie",
- is("foo=bar; Path=/foopath; Domain=.localhost; Secure; HttpOnly"));
+ .expectStatusCode(is(OK))
+ .expectHeader("Set-Cookie",
+ is("foo=bar; Path=/foopath; Domain=.localhost; Secure; HttpOnly"));
assertTrue(driver.close());
}
@Test
- public void requireThatTimeoutWorks() throws Exception {
+ void requireThatTimeoutWorks() throws Exception {
final UnresponsiveHandler requestHandler = new UnresponsiveHandler();
final JettyTestDriver driver = JettyTestDriver.newInstance(requestHandler);
driver.client().get("/status.html")
- .expectStatusCode(is(GATEWAY_TIMEOUT));
+ .expectStatusCode(is(GATEWAY_TIMEOUT));
ResponseDispatch.newInstance(OK).dispatch(requestHandler.responseHandler);
assertTrue(driver.close());
}
@@ -428,18 +427,18 @@ public class HttpServerTest {
// Header with no value is disallowed by https://tools.ietf.org/html/rfc7230#section-3.2
// Details in https://github.com/eclipse/jetty.project/issues/1116
@Test
- public void requireThatHeaderWithNullValueIsOmitted() throws Exception {
+ void requireThatHeaderWithNullValueIsOmitted() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new EchoWithHeaderRequestHandler("X-Foo", null));
driver.client().get("/status.html")
- .expectStatusCode(is(OK))
- .expectNoHeader("X-Foo");
+ .expectStatusCode(is(OK))
+ .expectNoHeader("X-Foo");
assertTrue(driver.close());
}
// Header with empty value is allowed by https://tools.ietf.org/html/rfc7230#section-3.2
// Details in https://github.com/eclipse/jetty.project/issues/1116
@Test
- public void requireThatHeaderWithEmptyValueIsAllowed() throws Exception {
+ void requireThatHeaderWithEmptyValueIsAllowed() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new EchoWithHeaderRequestHandler("X-Foo", ""));
driver.client().get("/status.html")
.expectStatusCode(is(OK))
@@ -448,19 +447,19 @@ public class HttpServerTest {
}
@Test
- public void requireThatNoConnectionHeaderMeansKeepAliveInHttp11KeepAliveDisabled() throws Exception {
+ void requireThatNoConnectionHeaderMeansKeepAliveInHttp11KeepAliveDisabled() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new EchoWithHeaderRequestHandler(CONNECTION, CLOSE));
driver.client().get("/status.html")
- .expectHeader(CONNECTION, is(CLOSE));
+ .expectHeader(CONNECTION, is(CLOSE));
assertThat(driver.close(), is(true));
}
@Test
- @Ignore("Temporarily ignore until stabilized")
- public void requireThatConnectionIsClosedAfterXRequests() throws Exception {
+ @Disabled("Temporarily ignore until stabilized")
+ void requireThatConnectionIsClosedAfterXRequests() throws Exception {
final int MAX_REQUESTS = 10;
- Path privateKeyFile = tmpFolder.newFile().toPath();
- Path certificateFile = tmpFolder.newFile().toPath();
+ Path privateKeyFile = File.createTempFile("junit", null, tmpFolder).toPath();
+ Path certificateFile = File.createTempFile("junit", null, tmpFolder).toPath();
generatePrivateKeyAndCertificate(privateKeyFile, certificateFile);
ConnectorConfig.Builder connectorConfig = new ConnectorConfig.Builder()
.maxRequestsPerConnection(MAX_REQUESTS)
@@ -490,7 +489,7 @@ public class HttpServerTest {
// HTTP/2
try (CloseableHttpAsyncClient client = createHttp2Client(driver)) {
String uri = "https://localhost:" + driver.server().getListenPort() + "/status.html";
- for (int i = 0; i < 2*MAX_REQUESTS; i++) {
+ for (int i = 0; i < 2 * MAX_REQUESTS; i++) {
try {
client.execute(SimpleRequestBuilder.get(uri).build(), null).get();
} catch (ExecutionException e) {
@@ -508,22 +507,22 @@ public class HttpServerTest {
}
@Test
- public void requireThatServerCanRespondToSslRequest() throws Exception {
- Path privateKeyFile = tmpFolder.newFile().toPath();
- Path certificateFile = tmpFolder.newFile().toPath();
+ void requireThatServerCanRespondToSslRequest() throws Exception {
+ Path privateKeyFile = File.createTempFile("junit", null, tmpFolder).toPath();
+ Path certificateFile = File.createTempFile("junit", null, tmpFolder).toPath();
generatePrivateKeyAndCertificate(privateKeyFile, certificateFile);
final JettyTestDriver driver = JettyTestDriver.newInstanceWithSsl(new EchoRequestHandler(), certificateFile, privateKeyFile, TlsClientAuth.WANT);
driver.client().get("/status.html")
- .expectStatusCode(is(OK));
+ .expectStatusCode(is(OK));
assertTrue(driver.close());
}
@Test
- public void requireThatTlsClientAuthenticationEnforcerRejectsRequestsForNonWhitelistedPaths() throws IOException {
- Path privateKeyFile = tmpFolder.newFile().toPath();
- Path certificateFile = tmpFolder.newFile().toPath();
+ void requireThatTlsClientAuthenticationEnforcerRejectsRequestsForNonWhitelistedPaths() throws IOException {
+ Path privateKeyFile = File.createTempFile("junit", null, tmpFolder).toPath();
+ Path certificateFile = File.createTempFile("junit", null, tmpFolder).toPath();
generatePrivateKeyAndCertificate(privateKeyFile, certificateFile);
JettyTestDriver driver = createSslWithTlsClientAuthenticationEnforcer(certificateFile, privateKeyFile);
@@ -539,9 +538,9 @@ public class HttpServerTest {
}
@Test
- public void requireThatTlsClientAuthenticationEnforcerAllowsRequestForWhitelistedPaths() throws IOException {
- Path privateKeyFile = tmpFolder.newFile().toPath();
- Path certificateFile = tmpFolder.newFile().toPath();
+ void requireThatTlsClientAuthenticationEnforcerAllowsRequestForWhitelistedPaths() throws IOException {
+ Path privateKeyFile = File.createTempFile("junit", null, tmpFolder).toPath();
+ Path certificateFile = File.createTempFile("junit", null, tmpFolder).toPath();
generatePrivateKeyAndCertificate(privateKeyFile, certificateFile);
JettyTestDriver driver = JettyTestDriver.newInstanceWithSsl(new EchoRequestHandler(), certificateFile, privateKeyFile, TlsClientAuth.WANT);
@@ -557,33 +556,33 @@ public class HttpServerTest {
}
@Test
- public void requireThatConnectedAtReturnsNonZero() throws Exception {
+ void requireThatConnectedAtReturnsNonZero() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(new ConnectedAtRequestHandler());
driver.client().get("/status.html")
- .expectStatusCode(is(OK))
- .expectContent(matchesPattern("\\d{13,}"));
+ .expectStatusCode(is(OK))
+ .expectContent(matchesPattern("\\d{13,}"));
assertThat(driver.close(), is(true));
}
@Test
- public void requireThatGzipEncodingRequestsAreAutomaticallyDecompressed() throws Exception {
+ void requireThatGzipEncodingRequestsAreAutomaticallyDecompressed() throws Exception {
JettyTestDriver driver = JettyTestDriver.newInstance(new ParameterPrinterRequestHandler());
String requestContent = generateContent('a', 30);
ResponseValidator response = driver.client().newPost("/status.html")
- .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED)
- .setGzipContent(requestContent)
- .execute();
+ .addHeader(CONTENT_TYPE, APPLICATION_X_WWW_FORM_URLENCODED)
+ .setGzipContent(requestContent)
+ .execute();
response.expectStatusCode(is(OK))
.expectContent(startsWith('{' + requestContent + "=[]}"));
assertTrue(driver.close());
}
@Test
- public void requireThatResponseStatsAreCollected() throws Exception {
+ void requireThatResponseStatsAreCollected() throws Exception {
RequestTypeHandler handler = new RequestTypeHandler();
JettyTestDriver driver = JettyTestDriver.newInstance(handler);
HttpResponseStatisticsCollector statisticsCollector = ((AbstractHandlerContainer) driver.server().server().getHandler())
- .getChildHandlerByClass(HttpResponseStatisticsCollector.class);
+ .getChildHandlerByClass(HttpResponseStatisticsCollector.class);
{
List<HttpResponseStatisticsCollector.StatisticsEntry> stats = statisticsCollector.takeStatistics();
@@ -614,7 +613,7 @@ public class HttpServerTest {
handler.setRequestType(Request.RequestType.READ);
driver.client().newPost("/status.html").execute();
var entry = waitForStatistics(statisticsCollector);
- assertEquals("Handler overrides request type", "read", entry.dimensions.requestType);
+ assertEquals("read", entry.dimensions.requestType, "Handler overrides request type");
}
assertTrue(driver.close());
@@ -635,25 +634,25 @@ public class HttpServerTest {
}
@Test
- public void requireThatConnectionThrottleDoesNotBlockConnectionsBelowThreshold() throws Exception {
+ void requireThatConnectionThrottleDoesNotBlockConnectionsBelowThreshold() throws Exception {
JettyTestDriver driver = JettyTestDriver.newConfiguredInstance(
new EchoRequestHandler(),
new ServerConfig.Builder(),
new ConnectorConfig.Builder()
.throttling(new Throttling.Builder()
- .enabled(true)
- .maxAcceptRate(10)
- .maxHeapUtilization(1.0)
- .maxConnections(10)));
+ .enabled(true)
+ .maxAcceptRate(10)
+ .maxHeapUtilization(1.0)
+ .maxConnections(10)));
driver.client().get("/status.html")
.expectStatusCode(is(OK));
assertTrue(driver.close());
}
@Test
- public void requireThatConnectionIsTrackedInConnectionLog() throws Exception {
- Path privateKeyFile = tmpFolder.newFile().toPath();
- Path certificateFile = tmpFolder.newFile().toPath();
+ void requireThatConnectionIsTrackedInConnectionLog() throws Exception {
+ Path privateKeyFile = File.createTempFile("junit", null, tmpFolder).toPath();
+ Path certificateFile = File.createTempFile("junit", null, tmpFolder).toPath();
generatePrivateKeyAndCertificate(privateKeyFile, certificateFile);
InMemoryConnectionLog connectionLog = new InMemoryConnectionLog();
Module overrideModule = binder -> binder.bind(ConnectionLog.class).toInstance(connectionLog);
@@ -690,7 +689,7 @@ public class HttpServerTest {
}
@Test
- public void requireThatRequestIsTrackedInAccessLog() throws IOException, InterruptedException {
+ void requireThatRequestIsTrackedInAccessLog() throws IOException, InterruptedException {
BlockingQueueRequestLog requestLogMock = new BlockingQueueRequestLog();
JettyTestDriver driver = JettyTestDriver.newConfiguredInstance(
new EchoRequestHandler(),
@@ -705,9 +704,9 @@ public class HttpServerTest {
}
@Test
- public void requireThatRequestsPerConnectionMetricIsAggregated() throws IOException {
- Path privateKeyFile = tmpFolder.newFile().toPath();
- Path certificateFile = tmpFolder.newFile().toPath();
+ void requireThatRequestsPerConnectionMetricIsAggregated() throws IOException {
+ Path privateKeyFile = File.createTempFile("junit", null, tmpFolder).toPath();
+ Path certificateFile = File.createTempFile("junit", null, tmpFolder).toPath();
generatePrivateKeyAndCertificate(privateKeyFile, certificateFile);
var metricConsumer = new MetricConsumerMock();
InMemoryConnectionLog connectionLog = new InMemoryConnectionLog();
@@ -719,9 +718,9 @@ public class HttpServerTest {
}
@Test
- public void uriWithEmptyPathSegmentIsAllowed() throws Exception {
- Path privateKeyFile = tmpFolder.newFile().toPath();
- Path certificateFile = tmpFolder.newFile().toPath();
+ void uriWithEmptyPathSegmentIsAllowed() throws Exception {
+ Path privateKeyFile = File.createTempFile("junit", null, tmpFolder).toPath();
+ Path certificateFile = File.createTempFile("junit", null, tmpFolder).toPath();
generatePrivateKeyAndCertificate(privateKeyFile, certificateFile);
MetricConsumerMock metricConsumer = new MetricConsumerMock();
InMemoryConnectionLog connectionLog = new InMemoryConnectionLog();
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/JDiscHttpServletTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/JDiscHttpServletTest.java
index 494f33ca04b..348bfd6183e 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/JDiscHttpServletTest.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/JDiscHttpServletTest.java
@@ -16,7 +16,7 @@ import org.apache.hc.client5.http.classic.methods.HttpPost;
import org.apache.hc.client5.http.classic.methods.HttpPut;
import org.apache.hc.client5.http.classic.methods.HttpTrace;
import org.apache.hc.client5.http.classic.methods.HttpUriRequestBase;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import java.io.IOException;
import java.net.URI;
@@ -32,30 +32,30 @@ import static org.hamcrest.MatcherAssert.assertThat;
public class JDiscHttpServletTest {
@Test
- public void requireThatServerRespondsToAllMethods() throws Exception {
+ void requireThatServerRespondsToAllMethods() throws Exception {
final JettyTestDriver driver = JettyTestDriver.newInstance(newEchoHandler());
final URI uri = driver.client().newUri("/status.html");
driver.client().execute(new HttpGet(uri))
- .expectStatusCode(is(OK));
+ .expectStatusCode(is(OK));
driver.client().execute(new HttpPost(uri))
- .expectStatusCode(is(OK));
+ .expectStatusCode(is(OK));
driver.client().execute(new HttpHead(uri))
- .expectStatusCode(is(OK));
+ .expectStatusCode(is(OK));
driver.client().execute(new HttpPut(uri))
- .expectStatusCode(is(OK));
+ .expectStatusCode(is(OK));
driver.client().execute(new HttpDelete(uri))
- .expectStatusCode(is(OK));
+ .expectStatusCode(is(OK));
driver.client().execute(new HttpOptions(uri))
- .expectStatusCode(is(OK));
+ .expectStatusCode(is(OK));
driver.client().execute(new HttpTrace(uri))
- .expectStatusCode(is(OK));
+ .expectStatusCode(is(OK));
driver.client().execute(new HttpPatch(uri))
.expectStatusCode(is(OK));
assertThat(driver.close(), is(true));
}
@Test
- public void requireThatServerResponds405ToUnknownMethods() throws IOException {
+ void requireThatServerResponds405ToUnknownMethods() throws IOException {
JettyTestDriver driver = JettyTestDriver.newInstance(newEchoHandler());
final URI uri = driver.client().newUri("/status.html");
driver.client().execute(new UnknownMethodHttpRequest(uri))
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/SimpleHttpClient.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/SimpleHttpClient.java
index c2a6e0326e2..298f0feb9e6 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/SimpleHttpClient.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/SimpleHttpClient.java
@@ -24,7 +24,6 @@ import org.apache.hc.core5.http.io.entity.ByteArrayEntity;
import org.apache.hc.core5.http.io.entity.EntityUtils;
import org.apache.hc.core5.http.io.entity.StringEntity;
import org.hamcrest.Matcher;
-import org.hamcrest.MatcherAssert;
import javax.net.ssl.SSLContext;
import java.io.IOException;
@@ -38,7 +37,7 @@ import java.util.List;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.nullValue;
import static org.hamcrest.MatcherAssert.assertThat;
-import static org.junit.Assert.assertNotNull;
+import static org.junit.jupiter.api.Assertions.assertNotNull;
/**
* A simple http client for testing
@@ -186,14 +185,14 @@ public class SimpleHttpClient implements AutoCloseable {
}
public ResponseValidator expectStatusCode(Matcher<Integer> matcher) {
- MatcherAssert.assertThat(response.getCode(), matcher);
+ assertThat(response.getCode(), matcher);
return this;
}
public ResponseValidator expectHeader(String headerName, Matcher<String> matcher) {
Header firstHeader = response.getFirstHeader(headerName);
String headerValue = firstHeader != null ? firstHeader.getValue() : null;
- MatcherAssert.assertThat(headerValue, matcher);
+ assertThat(headerValue, matcher);
assertNotNull(firstHeader);
return this;
}
@@ -205,7 +204,7 @@ public class SimpleHttpClient implements AutoCloseable {
}
public ResponseValidator expectContent(final Matcher<String> matcher) {
- MatcherAssert.assertThat(content, matcher);
+ assertThat(content, matcher);
return this;
}
diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/SslHandshakeFailedListenerTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/SslHandshakeFailedListenerTest.java
index cf7e1de4381..3858d6b9e4e 100644
--- a/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/SslHandshakeFailedListenerTest.java
+++ b/container-core/src/test/java/com/yahoo/jdisc/http/server/jetty/SslHandshakeFailedListenerTest.java
@@ -3,7 +3,7 @@ package com.yahoo.jdisc.http.server.jetty;
import com.yahoo.jdisc.Metric;
import org.eclipse.jetty.io.ssl.SslHandshakeListener;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import javax.net.ssl.SSLEngine;
import javax.net.ssl.SSLHandshakeException;
@@ -23,13 +23,13 @@ public class SslHandshakeFailedListenerTest {
SslHandshakeFailedListener listener = new SslHandshakeFailedListener(metrics, "connector", 1234);
@Test
- public void includes_client_ip_dimension_present_when_peer_available() {
+ void includes_client_ip_dimension_present_when_peer_available() {
listener.handshakeFailed(handshakeEvent(true), new SSLHandshakeException("Empty server certificate chain"));
verify(metrics).createContext(eq(Map.of("clientIp", "127.0.0.1", "serverName", "connector", "serverPort", 1234)));
}
@Test
- public void does_not_include_client_ip_dimension_present_when_peer_unavailable() {
+ void does_not_include_client_ip_dimension_present_when_peer_unavailable() {
listener.handshakeFailed(handshakeEvent(false), new SSLHandshakeException("Empty server certificate chain"));
verify(metrics).createContext(eq(Map.of("serverName", "connector", "serverPort", 1234)));
}