From 9bf664ba9a153a404f03c39d5ba0f99eb32c4419 Mon Sep 17 00:00:00 2001 From: Bjørn Christian Seime Date: Thu, 28 Jul 2022 15:10:47 +0200 Subject: Convert container-core to junit5 --- .../java/com/yahoo/jdisc/http/CookieTestCase.java | 80 ++-- .../com/yahoo/jdisc/http/HttpHeadersTestCase.java | 6 +- .../com/yahoo/jdisc/http/HttpRequestTestCase.java | 37 +- .../com/yahoo/jdisc/http/HttpResponseTestCase.java | 24 +- .../jdisc/http/filter/DiscFilterRequestTest.java | 489 ++++++++++----------- .../jdisc/http/filter/DiscFilterResponseTest.java | 39 +- .../http/filter/EmptyRequestFilterTestCase.java | 6 +- .../http/filter/EmptyResponseFilterTestCase.java | 6 +- .../jdisc/http/filter/JDiscCookieWrapperTest.java | 19 +- .../jdisc/http/filter/RequestViewImplTest.java | 8 +- .../filter/SecurityRequestFilterChainTest.java | 35 +- .../filter/SecurityResponseFilterChainTest.java | 20 +- .../jdisc/http/filter/util/FilterUtilsTest.java | 8 +- .../http/server/jetty/AccessLogRequestLogTest.java | 18 +- .../http/server/jetty/ConnectionThrottlerTest.java | 10 +- .../http/server/jetty/ConnectorFactoryTest.java | 16 +- .../jetty/ErrorResponseContentCreatorTest.java | 28 +- .../http/server/jetty/ExceptionWrapperTest.java | 8 +- .../jdisc/http/server/jetty/FilterTestCase.java | 56 +-- .../http/server/jetty/HttpRequestFactoryTest.java | 20 +- .../jetty/HttpResponseStatisticsCollectorTest.java | 18 +- .../server/jetty/HttpServerConformanceTest.java | 12 +- .../jdisc/http/server/jetty/HttpServerTest.java | 225 +++++----- .../http/server/jetty/JDiscHttpServletTest.java | 20 +- .../jdisc/http/server/jetty/SimpleHttpClient.java | 9 +- .../jetty/SslHandshakeFailedListenerTest.java | 6 +- .../http/ssl/impl/TlsContextBasedProviderTest.java | 6 +- 27 files changed, 607 insertions(+), 622 deletions(-) (limited to 'container-core/src/test/java/com/yahoo/jdisc/http') diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/CookieTestCase.java b/container-core/src/test/java/com/yahoo/jdisc/http/CookieTestCase.java index cf43a6470bc..3f18d41badd 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/CookieTestCase.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/CookieTestCase.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; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.util.List; import java.util.concurrent.TimeUnit; @@ -9,9 +9,7 @@ import java.util.concurrent.TimeUnit; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.containsInAnyOrder; import static org.hamcrest.Matchers.equalTo; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.*; /** * @author Simon Thoresen Hult @@ -20,19 +18,19 @@ import static org.junit.Assert.assertTrue; public class CookieTestCase { @Test - public void requireThatDefaultValuesAreSane() { + void requireThatDefaultValuesAreSane() { Cookie cookie = new Cookie("foo", "bar"); assertEquals("foo", cookie.getName()); assertEquals("bar", cookie.getValue()); - assertEquals(null, cookie.getDomain()); + assertNull(cookie.getDomain()); assertEquals(Integer.MIN_VALUE, cookie.getMaxAge(TimeUnit.SECONDS)); - assertEquals(null, cookie.getPath()); + assertNull(cookie.getPath()); assertEquals(false, cookie.isHttpOnly()); assertEquals(false, cookie.isSecure()); } @Test - public void requireThatAccessorsWork() { + void requireThatAccessorsWork() { final Cookie cookie = new Cookie(); cookie.setName("foo"); assertEquals("foo", cookie.getName()); @@ -70,7 +68,7 @@ public class CookieTestCase { } @Test - public void requireThatCopyConstructorWorks() { + void requireThatCopyConstructorWorks() { final Cookie lhs = newSetCookie("foo"); final Cookie rhs = new Cookie(lhs); assertEquals(rhs.getName(), rhs.getName()); @@ -83,23 +81,23 @@ public class CookieTestCase { } @Test - public void requireThatHashCodeIsImplemented() { + void requireThatHashCodeIsImplemented() { final Cookie cookie = newCookie("foo"); - assertFalse(cookie.hashCode() == new Cookie().hashCode()); + assertNotNull(new Cookie().hashCode()); assertEquals(cookie.hashCode(), cookie.hashCode()); assertEquals(cookie.hashCode(), new Cookie(cookie).hashCode()); } @Test - public void requireThatEqualsIsImplemented() { + void requireThatEqualsIsImplemented() { final Cookie cookie = newCookie("foo"); - assertFalse(cookie.equals(new Cookie())); + assertNotEquals(cookie, new Cookie()); assertEquals(cookie, cookie); assertEquals(cookie, new Cookie(cookie)); } @Test - public void requireThatCookieCanBeEncoded() { + void requireThatCookieCanBeEncoded() { assertEncodeCookie( "foo.name=foo.value", List.of(newCookie("foo"))); @@ -109,7 +107,7 @@ public class CookieTestCase { } @Test - public void requireThatSetCookieCanBeEncoded() { + void requireThatSetCookieCanBeEncoded() { assertEncodeSetCookie( List.of("foo.name=foo.value; Path=path; Domain=domain; Secure; HttpOnly", "foo.name=foo.value; Path=path; Domain=domain; Secure; HttpOnly; SameSite=None"), @@ -118,7 +116,7 @@ public class CookieTestCase { } @Test - public void requireThatCookieCanBeDecoded() { + void requireThatCookieCanBeDecoded() { final Cookie foo = new Cookie(); foo.setName("foo.name"); foo.setValue("foo.value"); @@ -127,11 +125,11 @@ public class CookieTestCase { final Cookie bar = new Cookie(); bar.setName("bar.name"); bar.setValue("bar.value"); - assertDecodeCookie(List.of(foo, bar),"foo.name=foo.value; bar.name=bar.value"); + assertDecodeCookie(List.of(foo, bar), "foo.name=foo.value; bar.name=bar.value"); } @Test - public void requireThatSetCookieCanBeDecoded() { + void requireThatSetCookieCanBeDecoded() { final Cookie foo = new Cookie(); foo.setName("foo.name"); foo.setValue("foo.value"); @@ -152,45 +150,45 @@ public class CookieTestCase { } @Test - public void requireThatCookieDecoderWorksForGenericValidCookies() { + void requireThatCookieDecoderWorksForGenericValidCookies() { Cookie.fromCookieHeader("Y=v=1&n=8es5opih9ljtk&l=og0_iedeh0qqvqqr/o&p=m2g2rs6012000000&r=pv&lg=en-US&intl=" + - "us&np=1; T=z=h.nzPBhSP4PBVd5JqacVnIbNjU1NAY2TjYzNzVOTjYzNzM0Mj&a=YAE&sk=DAALShmNQ" + - "vhoZV&ks=EAABsibvMK6ejwn0uUoS4rC9w--~E&d=c2wBTVRJeU13RXhPVEUwTURJNU9URTBNRFF6TlRJ" + - "NU5nLS0BYQFZQUUBZwE1VkNHT0w3VUVDTklJVEdRR1FXT0pOSkhEQQFzY2lkAWNOUnZIbEc3ZHZoVHlWZ" + - "0NoXzEwYkxhOVdzcy0Bb2sBWlcwLQF0aXABWUhwTmVDAXp6AWgubnpQQkE3RQ--"); + "us&np=1; T=z=h.nzPBhSP4PBVd5JqacVnIbNjU1NAY2TjYzNzVOTjYzNzM0Mj&a=YAE&sk=DAALShmNQ" + + "vhoZV&ks=EAABsibvMK6ejwn0uUoS4rC9w--~E&d=c2wBTVRJeU13RXhPVEUwTURJNU9URTBNRFF6TlRJ" + + "NU5nLS0BYQFZQUUBZwE1VkNHT0w3VUVDTklJVEdRR1FXT0pOSkhEQQFzY2lkAWNOUnZIbEc3ZHZoVHlWZ" + + "0NoXzEwYkxhOVdzcy0Bb2sBWlcwLQF0aXABWUhwTmVDAXp6AWgubnpQQkE3RQ--"); } @Test - public void requireThatCookieDecoderWorksForYInvalidCookies() { + void requireThatCookieDecoderWorksForYInvalidCookies() { Cookie.fromCookieHeader("Y=v=1&n=77nkr5t7o4nqn&l=og0_iedeh0qqvqqr/o&p=m2g2rs6012000000&r=pv&lg=en-US&intl=" + - "us&np=1; T=z=05nzPB0NP4PBN/n0gwc1AWGNjU1NAY2TjYzNzVOTjYzNzM0Mj&a=QAE&sk=DAA4R2svo" + - "osjIa&ks=EAAj3nBQFkN4ZmuhqFxJdNoaQ--~E&d=c2wBTVRJeU13RXhPVEUwTURJNU9URTBNRFF6TlRJ" + - "NU5nLS0BYQFRQUUBZwE1VkNHT0w3VUVDTklJVEdRR1FXT0pOSkhEQQFzY2lkAUpPalRXOEVsUDZrR3RHT" + - "VZkX29CWk53clJIQS0BdGlwAVlIcE5lQwF6egEwNW56UEJBN0U-"); + "us&np=1; T=z=05nzPB0NP4PBN/n0gwc1AWGNjU1NAY2TjYzNzVOTjYzNzM0Mj&a=QAE&sk=DAA4R2svo" + + "osjIa&ks=EAAj3nBQFkN4ZmuhqFxJdNoaQ--~E&d=c2wBTVRJeU13RXhPVEUwTURJNU9URTBNRFF6TlRJ" + + "NU5nLS0BYQFRQUUBZwE1VkNHT0w3VUVDTklJVEdRR1FXT0pOSkhEQQFzY2lkAUpPalRXOEVsUDZrR3RHT" + + "VZkX29CWk53clJIQS0BdGlwAVlIcE5lQwF6egEwNW56UEJBN0U-"); } @Test - public void requireThatCookieDecoderWorksForYValidCookies() { + void requireThatCookieDecoderWorksForYValidCookies() { Cookie.fromCookieHeader("Y=v=1&n=3767k6te5aj2s&l=1v4u3001uw2ys00q0rw0qrw34q0x5s3u/o&p=030vvit012000000&iz=" + - "&r=pu&lg=en-US,it-IT,it&intl=it&np=1; T=z=m38yPBmLk3PBWvehTPBhBHYNU5OBjQ3NE5ONU5P" + - "NDY0NzU0M0&a=IAE&sk=DAAAx5URYgbhQ6&ks=EAA4rTgdlAGeMQmdYeM_VehGg--~E&d=c2wBTWprNUF" + - "UTXdNems1TWprNE16RXpNREl6TkRneAFhAUlBRQFnAUVJSlNMSzVRM1pWNVNLQVBNRkszQTRaWDZBAXNj" + - "aWQBSUlyZW5paXp4NS4zTUZMMDVlSVhuMjZKYUcwLQFvawFaVzAtAWFsAW1hcmlvYXByZWFAeW1haWwuY" + - "29tAXp6AW0zOHlQQkE3RQF0aXABaXRZOFRE"); + "&r=pu&lg=en-US,it-IT,it&intl=it&np=1; T=z=m38yPBmLk3PBWvehTPBhBHYNU5OBjQ3NE5ONU5P" + + "NDY0NzU0M0&a=IAE&sk=DAAAx5URYgbhQ6&ks=EAA4rTgdlAGeMQmdYeM_VehGg--~E&d=c2wBTWprNUF" + + "UTXdNems1TWprNE16RXpNREl6TkRneAFhAUlBRQFnAUVJSlNMSzVRM1pWNVNLQVBNRkszQTRaWDZBAXNj" + + "aWQBSUlyZW5paXp4NS4zTUZMMDVlSVhuMjZKYUcwLQFvawFaVzAtAWFsAW1hcmlvYXByZWFAeW1haWwuY" + + "29tAXp6AW0zOHlQQkE3RQF0aXABaXRZOFRE"); } @Test - public void requireThatCookieDecoderWorksForGenericInvalidCookies() { + void requireThatCookieDecoderWorksForGenericInvalidCookies() { Cookie.fromCookieHeader("Y=v=1&n=e92s5cq8qbs6h&l=3kdb0f.3@i126be10b.d4j/o&p=m1f2qgmb13000107&r=g5&lg=en-US" + - "&intl=us; T=z=TXp3OBTrQ8OBFMcj3GBpFSyNk83TgY2MjMwN04zMDMw&a=YAE&sk=DAAVfaNwLeISrX" + - "&ks=EAAOeNNgY8c5hV8YzPYmnrW7w--~E&d=c2wBTVRnd09RRXhOVFEzTURrME56UTMBYQFZQUUBZwFMQ" + - "U5NT0Q2UjY2Q0I1STY0R0tKSUdVQVlRRQFvawFaVzAtAXRpcAFMTlRUdkMBenoBVFhwM09CQTdF&af=QU" + - "FBQ0FDQURBd0FCMUNCOUFJQUJBQ0FEQU1IME1nTWhNbiZ0cz0xMzIzMjEwMTk1JnBzPVA1d3NYakh0aVk" + - "2UDMuUGZ6WkdTT2ctLQ--"); + "&intl=us; T=z=TXp3OBTrQ8OBFMcj3GBpFSyNk83TgY2MjMwN04zMDMw&a=YAE&sk=DAAVfaNwLeISrX" + + "&ks=EAAOeNNgY8c5hV8YzPYmnrW7w--~E&d=c2wBTVRnd09RRXhOVFEzTURrME56UTMBYQFZQUUBZwFMQ" + + "U5NT0Q2UjY2Q0I1STY0R0tKSUdVQVlRRQFvawFaVzAtAXRpcAFMTlRUdkMBenoBVFhwM09CQTdF&af=QU" + + "FBQ0FDQURBd0FCMUNCOUFJQUJBQ0FEQU1IME1nTWhNbiZ0cz0xMzIzMjEwMTk1JnBzPVA1d3NYakh0aVk" + + "2UDMuUGZ6WkdTT2ctLQ--"); } @Test - public void requireMappingBetweenSameSiteAndJettySameSite() { + void requireMappingBetweenSameSiteAndJettySameSite() { for (var jdiscSameSite : Cookie.SameSite.values()) { assertEquals(jdiscSameSite, Cookie.SameSite.fromJettySameSite(jdiscSameSite.jettySameSite())); } diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/HttpHeadersTestCase.java b/container-core/src/test/java/com/yahoo/jdisc/http/HttpHeadersTestCase.java index 3ab4fb1078c..08f646c069e 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/HttpHeadersTestCase.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/HttpHeadersTestCase.java @@ -1,9 +1,9 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.jdisc.http; -import org.junit.Test; +import org.junit.jupiter.api.Test; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; /** * @author Simon Thoresen Hult @@ -11,7 +11,7 @@ import static org.junit.Assert.assertEquals; public class HttpHeadersTestCase { @Test - public void requireThatHeadersDoNotChange() { + void requireThatHeadersDoNotChange() { assertEquals("X-JDisc-Disable-Chunking", HttpHeaders.Names.X_DISABLE_CHUNKING); } } diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/HttpRequestTestCase.java b/container-core/src/test/java/com/yahoo/jdisc/http/HttpRequestTestCase.java index 7f9e1e8bd64..30e58f6d2f5 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/HttpRequestTestCase.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/HttpRequestTestCase.java @@ -4,7 +4,7 @@ package com.yahoo.jdisc.http; import com.yahoo.jdisc.Container; import com.yahoo.jdisc.Request; import com.yahoo.jdisc.service.CurrentContainer; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.net.InetSocketAddress; import java.net.URI; @@ -13,10 +13,7 @@ import java.util.Collections; import java.util.List; import java.util.concurrent.TimeUnit; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.*; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; @@ -27,7 +24,7 @@ import static org.mockito.Mockito.when; public class HttpRequestTestCase { @Test - public void requireThatSimpleServerConstructorsUseReasonableDefaults() { + void requireThatSimpleServerConstructorsUseReasonableDefaults() { URI uri = URI.create("http://localhost/"); HttpRequest request = HttpRequest.newServerRequest(mockContainer(), uri); assertTrue(request.isServerRequest()); @@ -49,7 +46,7 @@ public class HttpRequestTestCase { } @Test - public void requireThatSimpleClientConstructorsUseReasonableDefaults() { + void requireThatSimpleClientConstructorsUseReasonableDefaults() { Request parent = new Request(mockContainer(), URI.create("http://localhost/")); URI uri = URI.create("http://remotehost/"); @@ -73,11 +70,11 @@ public class HttpRequestTestCase { } @Test - public void requireThatAccessorsWork() { + void requireThatAccessorsWork() { URI uri = URI.create("http://localhost/path?foo=bar&foo=baz&cox=69"); InetSocketAddress address = new InetSocketAddress("remotehost", 69); final HttpRequest request = HttpRequest.newServerRequest(mockContainer(), uri, HttpRequest.Method.GET, - HttpRequest.Version.HTTP_1_1, address, 1L); + HttpRequest.Version.HTTP_1_1, address, 1L); assertEquals(uri, request.getUri()); assertEquals(HttpRequest.Method.GET, request.getMethod()); @@ -110,7 +107,7 @@ public class HttpRequestTestCase { } @Test - public void requireThatHttp10EncodingIsNeverChunked() throws Exception { + void requireThatHttp10EncodingIsNeverChunked() throws Exception { final HttpRequest request = newRequest(HttpRequest.Version.HTTP_1_0); assertFalse(request.isChunked()); request.headers().add(HttpHeaders.Names.TRANSFER_ENCODING, HttpHeaders.Values.CHUNKED); @@ -118,20 +115,20 @@ public class HttpRequestTestCase { } @Test - public void requireThatHttp11EncodingIsNotChunkedByDefault() throws Exception { + void requireThatHttp11EncodingIsNotChunkedByDefault() throws Exception { final HttpRequest request = newRequest(HttpRequest.Version.HTTP_1_1); assertFalse(request.isChunked()); } @Test - public void requireThatHttp11EncodingCanBeChunked() throws Exception { + void requireThatHttp11EncodingCanBeChunked() throws Exception { final HttpRequest request = newRequest(HttpRequest.Version.HTTP_1_1); request.headers().add(HttpHeaders.Names.TRANSFER_ENCODING, HttpHeaders.Values.CHUNKED); assertTrue(request.isChunked()); } @Test - public void requireThatHttp10ConnectionIsAlwaysClose() throws Exception { + void requireThatHttp10ConnectionIsAlwaysClose() throws Exception { final HttpRequest request = newRequest(HttpRequest.Version.HTTP_1_0); assertFalse(request.isKeepAlive()); request.headers().add(HttpHeaders.Names.CONNECTION, HttpHeaders.Values.KEEP_ALIVE); @@ -139,39 +136,39 @@ public class HttpRequestTestCase { } @Test - public void requireThatHttp11ConnectionIsKeepAliveByDefault() throws Exception { + void requireThatHttp11ConnectionIsKeepAliveByDefault() throws Exception { final HttpRequest request = newRequest(HttpRequest.Version.HTTP_1_1); assertTrue(request.isKeepAlive()); } @Test - public void requireThatHttp11ConnectionCanBeClose() throws Exception { + void requireThatHttp11ConnectionCanBeClose() throws Exception { final HttpRequest request = newRequest(HttpRequest.Version.HTTP_1_1); request.headers().add(HttpHeaders.Names.CONNECTION, HttpHeaders.Values.CLOSE); assertFalse(request.isKeepAlive()); } @Test - public void requireThatHttp10NeverHasChunkedResponse() throws Exception { + void requireThatHttp10NeverHasChunkedResponse() throws Exception { final HttpRequest request = newRequest(HttpRequest.Version.HTTP_1_0); assertFalse(request.hasChunkedResponse()); } @Test - public void requireThatHttp11HasDefaultChunkedResponse() throws Exception { + void requireThatHttp11HasDefaultChunkedResponse() throws Exception { final HttpRequest request = newRequest(HttpRequest.Version.HTTP_1_1); assertTrue(request.hasChunkedResponse()); } @Test - public void requireThatHttp11CanDisableChunkedResponse() throws Exception { + void requireThatHttp11CanDisableChunkedResponse() throws Exception { final HttpRequest request = newRequest(HttpRequest.Version.HTTP_1_0); request.headers().add(com.yahoo.jdisc.http.HttpHeaders.Names.X_DISABLE_CHUNKING, "true"); assertFalse(request.hasChunkedResponse()); } @Test - public void requireThatCookieHeaderCanBeEncoded() throws Exception { + void requireThatCookieHeaderCanBeEncoded() throws Exception { final HttpRequest request = newRequest(HttpRequest.Version.HTTP_1_0); final List cookies = Collections.singletonList(new Cookie("foo", "bar")); request.encodeCookieHeader(cookies); @@ -181,7 +178,7 @@ public class HttpRequestTestCase { } @Test - public void requireThatCookieHeaderCanBeDecoded() throws Exception { + void requireThatCookieHeaderCanBeDecoded() throws Exception { final HttpRequest request = newRequest(HttpRequest.Version.HTTP_1_0); final List cookies = Collections.singletonList(new Cookie("foo", "bar")); request.encodeCookieHeader(cookies); diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/HttpResponseTestCase.java b/container-core/src/test/java/com/yahoo/jdisc/http/HttpResponseTestCase.java index c4cf1de0e4e..09682e73630 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/HttpResponseTestCase.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/HttpResponseTestCase.java @@ -5,18 +5,14 @@ import com.yahoo.jdisc.Container; import com.yahoo.jdisc.Request; import com.yahoo.jdisc.Response; import com.yahoo.jdisc.service.CurrentContainer; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.net.URI; import java.util.Arrays; import java.util.Collections; import java.util.List; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertSame; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.*; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; @@ -27,7 +23,7 @@ import static org.mockito.Mockito.when; public class HttpResponseTestCase { @Test - public void requireThatAccessorsWork() throws Exception { + void requireThatAccessorsWork() throws Exception { final HttpResponse response = newResponse(6, "foo"); assertEquals(6, response.getStatus()); assertEquals("foo", response.getMessage()); @@ -49,7 +45,7 @@ public class HttpResponseTestCase { } @Test - public void requireThatStatusCodesDoNotChange() { + void requireThatStatusCodesDoNotChange() { assertEquals(HttpResponse.Status.CREATED, 201); assertEquals(HttpResponse.Status.ACCEPTED, 202); assertEquals(HttpResponse.Status.NON_AUTHORITATIVE_INFORMATION, 203); @@ -79,14 +75,14 @@ public class HttpResponseTestCase { } @Test - public void requireThat5xxIsServerError() { + void requireThat5xxIsServerError() { for (int i = 0; i < 999; ++i) { assertEquals(i >= 500 && i < 600, HttpResponse.isServerError(new Response(i))); } } @Test - public void requireThatCookieHeaderCanBeEncoded() throws Exception { + void requireThatCookieHeaderCanBeEncoded() throws Exception { final HttpResponse response = newResponse(69, "foo"); final List cookies = Collections.singletonList(new Cookie("foo", "bar")); response.encodeSetCookieHeader(cookies); @@ -96,18 +92,18 @@ public class HttpResponseTestCase { } @Test - public void requireThatMultipleCookieHeadersCanBeEncoded() throws Exception { + void requireThatMultipleCookieHeadersCanBeEncoded() throws Exception { final HttpResponse response = newResponse(69, "foo"); final List cookies = Arrays.asList(new Cookie("foo", "bar"), new Cookie("baz", "cox")); response.encodeSetCookieHeader(cookies); final List headers = response.headers().get(HttpHeaders.Names.SET_COOKIE); assertEquals(2, headers.size()); assertEquals(Cookie.toSetCookieHeaders(Arrays.asList(new Cookie("foo", "bar"), new Cookie("baz", "cox"))), - headers); + headers); } @Test - public void requireThatCookieHeaderCanBeDecoded() throws Exception { + void requireThatCookieHeaderCanBeDecoded() throws Exception { final HttpResponse response = newResponse(69, "foo"); final List cookies = Collections.singletonList(new Cookie("foo", "bar")); response.encodeSetCookieHeader(cookies); @@ -115,7 +111,7 @@ public class HttpResponseTestCase { } @Test - public void requireThatMultipleCookieHeadersCanBeDecoded() throws Exception { + void requireThatMultipleCookieHeadersCanBeDecoded() throws Exception { final HttpResponse response = newResponse(69, "foo"); final List cookies = Arrays.asList(new Cookie("foo", "bar"), new Cookie("baz", "cox")); response.encodeSetCookieHeader(cookies); diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/filter/DiscFilterRequestTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/filter/DiscFilterRequestTest.java index 294e19aa2a1..0f5474cbf57 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/filter/DiscFilterRequestTest.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/filter/DiscFilterRequestTest.java @@ -7,8 +7,7 @@ import com.yahoo.jdisc.http.HttpHeaders; import com.yahoo.jdisc.http.HttpRequest; import com.yahoo.jdisc.http.HttpRequest.Version; import com.yahoo.jdisc.test.TestDriver; -import org.junit.Assert; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.net.InetSocketAddress; import java.net.URI; @@ -18,7 +17,7 @@ import java.util.Collections; import java.util.Enumeration; import java.util.List; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.*; public class DiscFilterRequestTest { @@ -32,323 +31,323 @@ public class DiscFilterRequestTest { return request; } - @Test - public void testRequestConstruction(){ - URI uri = URI.create("http://localhost:8080/test?param1=abc"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - httpReq.headers().add(HttpHeaders.Names.CONTENT_TYPE, "text/html;charset=UTF-8"); - httpReq.headers().add("X-Custom-Header", "custom_header"); - List cookies = new ArrayList<>(); - cookies.add(new Cookie("XYZ", "value")); - cookies.add(new Cookie("ABC", "value")); - httpReq.encodeCookieHeader(cookies); - DiscFilterRequest request = new DiscFilterRequest(httpReq); - Assert.assertEquals(request.getHeader("X-Custom-Header"),"custom_header"); - Assert.assertEquals(request.getHeader(HttpHeaders.Names.CONTENT_TYPE),"text/html;charset=UTF-8"); - - List c = request.getCookies(); - Assert.assertNotNull(c); - Assert.assertEquals(c.size(), 2); - - Assert.assertEquals(request.getParameter("param1"),"abc"); - Assert.assertNull(request.getParameter("param2")); - Assert.assertEquals(request.getVersion(),Version.HTTP_1_1); - Assert.assertEquals(request.getProtocol(),Version.HTTP_1_1.name()); - Assert.assertNull(request.getRequestedSessionId()); - } - - @Test - public void testRequestConstruction2() { - URI uri = URI.create("http://localhost:8080/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - httpReq.headers().add("some-header", "some-value"); - DiscFilterRequest request = new DiscFilterRequest(httpReq); - - request.addHeader("some-header", "some-value"); - String value = request.getUntreatedHeaders().get("some-header").get(0); - Assert.assertEquals(value,"some-value"); - } - - @Test - public void testRequestAttributes() { - URI uri = URI.create("http://localhost:8080/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - DiscFilterRequest request = new DiscFilterRequest(httpReq); - request.setAttribute("some_attr", "some_value"); - - Assert.assertTrue(request.containsAttribute("some_attr")); - - Assert.assertEquals(request.getAttribute("some_attr"),"some_value"); - - } - - @Test - public void testGetAttributeNames() { - URI uri = URI.create("http://localhost:8080/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - DiscFilterRequest request = new DiscFilterRequest(httpReq); - request.setAttribute("some_attr_1", "some_value1"); - request.setAttribute("some_attr_2", "some_value2"); - - Enumeration e = request.getAttributeNames(); - List attrList = Collections.list(e); - Assert.assertEquals(2, attrList.size()); - Assert.assertTrue(attrList.contains("some_attr_1")); - Assert.assertTrue(attrList.contains("some_attr_2")); - - } - - @Test - public void testRemoveAttribute() { - URI uri = URI.create("http://localhost:8080/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - DiscFilterRequest request = new DiscFilterRequest(httpReq); + @Test + void testRequestConstruction() { + URI uri = URI.create("http://localhost:8080/test?param1=abc"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + httpReq.headers().add(HttpHeaders.Names.CONTENT_TYPE, "text/html;charset=UTF-8"); + httpReq.headers().add("X-Custom-Header", "custom_header"); + List cookies = new ArrayList<>(); + cookies.add(new Cookie("XYZ", "value")); + cookies.add(new Cookie("ABC", "value")); + httpReq.encodeCookieHeader(cookies); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + assertEquals(request.getHeader("X-Custom-Header"), "custom_header"); + assertEquals(request.getHeader(HttpHeaders.Names.CONTENT_TYPE), "text/html;charset=UTF-8"); + + List c = request.getCookies(); + assertNotNull(c); + assertEquals(c.size(), 2); + + assertEquals(request.getParameter("param1"), "abc"); + assertNull(request.getParameter("param2")); + assertEquals(request.getVersion(), Version.HTTP_1_1); + assertEquals(request.getProtocol(), Version.HTTP_1_1.name()); + assertNull(request.getRequestedSessionId()); + } + + @Test + void testRequestConstruction2() { + URI uri = URI.create("http://localhost:8080/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + httpReq.headers().add("some-header", "some-value"); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + + request.addHeader("some-header", "some-value"); + String value = request.getUntreatedHeaders().get("some-header").get(0); + assertEquals(value, "some-value"); + } + + @Test + void testRequestAttributes() { + URI uri = URI.create("http://localhost:8080/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + DiscFilterRequest request = new DiscFilterRequest(httpReq); request.setAttribute("some_attr", "some_value"); - Assert.assertTrue(request.containsAttribute("some_attr")); + assertTrue(request.containsAttribute("some_attr")); - request.removeAttribute("some_attr"); + assertEquals(request.getAttribute("some_attr"), "some_value"); - Assert.assertFalse(request.containsAttribute("some_attr")); - } + } - @Test - public void testGetIntHeader() { - URI uri = URI.create("http://localhost:8080/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - DiscFilterRequest request = new DiscFilterRequest(httpReq); + @Test + void testGetAttributeNames() { + URI uri = URI.create("http://localhost:8080/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + request.setAttribute("some_attr_1", "some_value1"); + request.setAttribute("some_attr_2", "some_value2"); - Assert.assertEquals(-1, request.getIntHeader("int_header")); + Enumeration e = request.getAttributeNames(); + List attrList = Collections.list(e); + assertEquals(2, attrList.size()); + assertTrue(attrList.contains("some_attr_1")); + assertTrue(attrList.contains("some_attr_2")); - request.addHeader("int_header", String.valueOf(5)); + } - Assert.assertEquals(5, request.getIntHeader("int_header")); - } + @Test + void testRemoveAttribute() { + URI uri = URI.create("http://localhost:8080/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + request.setAttribute("some_attr", "some_value"); + + assertTrue(request.containsAttribute("some_attr")); + + request.removeAttribute("some_attr"); + + assertFalse(request.containsAttribute("some_attr")); + } + + @Test + void testGetIntHeader() { + URI uri = URI.create("http://localhost:8080/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + + assertEquals(-1, request.getIntHeader("int_header")); - @Test - public void testDateHeader() { - URI uri = URI.create("http://localhost:8080/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - DiscFilterRequest request = new DiscFilterRequest(httpReq); + request.addHeader("int_header", String.valueOf(5)); + assertEquals(5, request.getIntHeader("int_header")); + } + + @Test + void testDateHeader() { + URI uri = URI.create("http://localhost:8080/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + DiscFilterRequest request = new DiscFilterRequest(httpReq); - Assert.assertEquals(-1, request.getDateHeader(HttpHeaders.Names.IF_MODIFIED_SINCE)); - request.addHeader(HttpHeaders.Names.IF_MODIFIED_SINCE, "Sat, 29 Oct 1994 19:43:31 GMT"); + assertEquals(-1, request.getDateHeader(HttpHeaders.Names.IF_MODIFIED_SINCE)); - Assert.assertEquals(783459811000L, request.getDateHeader(HttpHeaders.Names.IF_MODIFIED_SINCE)); - } + request.addHeader(HttpHeaders.Names.IF_MODIFIED_SINCE, "Sat, 29 Oct 1994 19:43:31 GMT"); - @Test - public void testParameterAPIsAsList() { + assertEquals(783459811000L, request.getDateHeader(HttpHeaders.Names.IF_MODIFIED_SINCE)); + } + + @Test + void testParameterAPIsAsList() { URI uri = URI.create("http://example.yahoo.com:8080/test?param1=abc¶m2=xyz¶m2=pqr"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - DiscFilterRequest request = new DiscFilterRequest(httpReq); - Assert.assertEquals(request.getParameter("param1"),"abc"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + assertEquals(request.getParameter("param1"), "abc"); List values = request.getParameterValuesAsList("param2"); - Assert.assertEquals(values.get(0),"xyz"); - Assert.assertEquals(values.get(1),"pqr"); + assertEquals(values.get(0), "xyz"); + assertEquals(values.get(1), "pqr"); List paramNames = request.getParameterNamesAsList(); - Assert.assertEquals(paramNames.size(), 2); + assertEquals(paramNames.size(), 2); - } + } - @Test - public void testParameterAPI(){ - URI uri = URI.create("http://example.yahoo.com:8080/test?param1=abc¶m2=xyz¶m2=pqr"); + @Test + void testParameterAPI() { + URI uri = URI.create("http://example.yahoo.com:8080/test?param1=abc¶m2=xyz¶m2=pqr"); HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); DiscFilterRequest request = new DiscFilterRequest(httpReq); - Assert.assertEquals(request.getParameter("param1"),"abc"); + assertEquals(request.getParameter("param1"), "abc"); Enumeration values = request.getParameterValues("param2"); List valuesList = Collections.list(values); - Assert.assertEquals(valuesList.get(0),"xyz"); - Assert.assertEquals(valuesList.get(1),"pqr"); + assertEquals(valuesList.get(0), "xyz"); + assertEquals(valuesList.get(1), "pqr"); Enumeration paramNames = request.getParameterNames(); List paramNamesList = Collections.list(paramNames); - Assert.assertEquals(paramNamesList.size(), 2); - } + assertEquals(paramNamesList.size(), 2); + } - @Test - public void testGetHeaderNamesAsList() { - URI uri = URI.create("http://localhost:8080/test"); + @Test + void testGetHeaderNamesAsList() { + URI uri = URI.create("http://localhost:8080/test"); HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); httpReq.headers().add(HttpHeaders.Names.CONTENT_TYPE, "multipart/form-data"); httpReq.headers().add("header_1", "value1"); httpReq.headers().add("header_2", "value2"); DiscFilterRequest request = new DiscFilterRequest(httpReq); - Assert.assertNotNull(request.getHeaderNamesAsList()); - Assert.assertEquals(request.getHeaderNamesAsList().size(), 3); - } + assertNotNull(request.getHeaderNamesAsList()); + assertEquals(request.getHeaderNamesAsList().size(), 3); + } - @Test - public void testGetHeadersAsList() { + @Test + void testGetHeadersAsList() { URI uri = URI.create("http://localhost:8080/test"); HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); DiscFilterRequest request = new DiscFilterRequest(httpReq); - Assert.assertNotNull(request.getHeaderNamesAsList()); - Assert.assertEquals(request.getHeaderNamesAsList().size(), 0); + assertNotNull(request.getHeaderNamesAsList()); + assertEquals(request.getHeaderNamesAsList().size(), 0); httpReq.headers().add("header_1", "value1"); httpReq.headers().add("header_1", "value2"); - Assert.assertEquals(request.getHeadersAsList("header_1").size(), 2); + assertEquals(request.getHeadersAsList("header_1").size(), 2); } - @Test - public void testIsMultipart() { + @Test + void testIsMultipart() { - URI uri = URI.create("http://localhost:8080/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - httpReq.headers().add(HttpHeaders.Names.CONTENT_TYPE, "multipart/form-data"); - DiscFilterRequest request = new DiscFilterRequest(httpReq); + URI uri = URI.create("http://localhost:8080/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + httpReq.headers().add(HttpHeaders.Names.CONTENT_TYPE, "multipart/form-data"); + DiscFilterRequest request = new DiscFilterRequest(httpReq); - Assert.assertTrue(DiscFilterRequest.isMultipart(request)); + assertTrue(DiscFilterRequest.isMultipart(request)); - httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - httpReq.headers().add(HttpHeaders.Names.CONTENT_TYPE, "text/html;charset=UTF-8"); - request = new DiscFilterRequest(httpReq); + httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + httpReq.headers().add(HttpHeaders.Names.CONTENT_TYPE, "text/html;charset=UTF-8"); + request = new DiscFilterRequest(httpReq); - Assert.assertFalse(DiscFilterRequest.isMultipart(request)); + assertFalse(DiscFilterRequest.isMultipart(request)); - Assert.assertFalse(DiscFilterRequest.isMultipart(null)); + assertFalse(DiscFilterRequest.isMultipart(null)); - httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - request = new DiscFilterRequest(httpReq); - Assert.assertFalse(DiscFilterRequest.isMultipart(request)); - } + httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + request = new DiscFilterRequest(httpReq); + assertFalse(DiscFilterRequest.isMultipart(request)); + } - @Test - public void testGetRemotePortLocalPort() { + @Test + void testGetRemotePortLocalPort() { URI uri = URI.create("http://example.yahoo.com:8080/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - DiscFilterRequest request = new DiscFilterRequest(httpReq); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + DiscFilterRequest request = new DiscFilterRequest(httpReq); - Assert.assertEquals(69, request.getRemotePort()); - Assert.assertEquals(8080, request.getLocalPort()); + assertEquals(69, request.getRemotePort()); + assertEquals(8080, request.getLocalPort()); - if (request.getRemoteHost() != null) // if we have network - Assert.assertEquals("example.yahoo.com", request.getRemoteHost()); + if (request.getRemoteHost() != null) // if we have network + assertEquals("example.yahoo.com", request.getRemoteHost()); request.setRemoteAddr("1.1.1.1"); - Assert.assertEquals("1.1.1.1",request.getRemoteAddr()); - } - - @Test - public void testCharacterEncoding() { - URI uri = URI.create("http://example.yahoo.com:8080/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - DiscFilterRequest request = new DiscFilterRequest(httpReq); - request.setHeaders(HttpHeaders.Names.CONTENT_TYPE, "text/html;charset=UTF-8"); - - Assert.assertEquals(request.getCharacterEncoding(), "UTF-8"); - - httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - request = new DiscFilterRequest(httpReq); - request.setHeaders(HttpHeaders.Names.CONTENT_TYPE, "text/html"); - request.setCharacterEncoding("UTF-8"); - - Assert.assertEquals(request.getCharacterEncoding(),"UTF-8"); - - Assert.assertEquals(request.getHeader(HttpHeaders.Names.CONTENT_TYPE),"text/html;charset=UTF-8"); - } - - @Test - public void testGetServerPort() { - { - URI uri = URI.create("http://example.yahoo.com/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - DiscFilterRequest request = new DiscFilterRequest(httpReq); - Assert.assertEquals(request.getServerPort(), 80); - - } - { - URI uri = URI.create("https://example.yahoo.com/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - DiscFilterRequest request = new DiscFilterRequest(httpReq); - Assert.assertEquals(request.getServerPort(), 443); - } - } - - @Test - public void testIsSecure() { - { - URI uri = URI.create("http://example.yahoo.com/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - DiscFilterRequest request = new DiscFilterRequest(httpReq); - Assert.assertFalse(request.isSecure()); - } - { - URI uri = URI.create("https://example.yahoo.com/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - DiscFilterRequest request = new DiscFilterRequest(httpReq); - Assert.assertTrue(request.isSecure()); - } - } + assertEquals("1.1.1.1", request.getRemoteAddr()); + } + + @Test + void testCharacterEncoding() { + URI uri = URI.create("http://example.yahoo.com:8080/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + request.setHeaders(HttpHeaders.Names.CONTENT_TYPE, "text/html;charset=UTF-8"); + + assertEquals(request.getCharacterEncoding(), "UTF-8"); + + httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + request = new DiscFilterRequest(httpReq); + request.setHeaders(HttpHeaders.Names.CONTENT_TYPE, "text/html"); + request.setCharacterEncoding("UTF-8"); + + assertEquals(request.getCharacterEncoding(), "UTF-8"); + + assertEquals(request.getHeader(HttpHeaders.Names.CONTENT_TYPE), "text/html;charset=UTF-8"); + } + + @Test + void testGetServerPort() { + { + URI uri = URI.create("http://example.yahoo.com/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + assertEquals(request.getServerPort(), 80); + + } + { + URI uri = URI.create("https://example.yahoo.com/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + assertEquals(request.getServerPort(), 443); + } + } @Test - public void requireThatUnresolvableRemoteAddressesAreSupported() { + void testIsSecure() { + { + URI uri = URI.create("http://example.yahoo.com/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + assertFalse(request.isSecure()); + } + { + URI uri = URI.create("https://example.yahoo.com/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + assertTrue(request.isSecure()); + } + } + + @Test + void requireThatUnresolvableRemoteAddressesAreSupported() { URI uri = URI.create("http://doesnotresolve.zzz:8080/test"); HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); DiscFilterRequest request = new DiscFilterRequest(httpReq); - Assert.assertNull(request.getLocalAddr()); + assertNull(request.getLocalAddr()); } @Test - public void testGetUntreatedHeaders() { - URI uri = URI.create("http://example.yahoo.com/test"); + void testGetUntreatedHeaders() { + URI uri = URI.create("http://example.yahoo.com/test"); HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); httpReq.headers().add("key1", "value1"); - httpReq.headers().add("key2", Arrays.asList("value1","value2")); + httpReq.headers().add("key2", Arrays.asList("value1", "value2")); DiscFilterRequest request = new DiscFilterRequest(httpReq); HeaderFields headers = request.getUntreatedHeaders(); - Assert.assertEquals(headers.keySet().size(), 2); - Assert.assertEquals(headers.get("key1").get(0), "value1" ); - Assert.assertEquals(headers.get("key2").get(0), "value1" ); - Assert.assertEquals(headers.get("key2").get(1), "value2" ); + assertEquals(headers.keySet().size(), 2); + assertEquals(headers.get("key1").get(0), "value1"); + assertEquals(headers.get("key2").get(0), "value1"); + assertEquals(headers.get("key2").get(1), "value2"); + } + + @Test + void testClearCookies() { + URI uri = URI.create("http://example.yahoo.com/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + httpReq.headers().put(HttpHeaders.Names.COOKIE, "XYZ=value"); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + request.clearCookies(); + assertNull(request.getHeader(HttpHeaders.Names.COOKIE)); + } + + @Test + void testGetWrapedCookies() { + URI uri = URI.create("http://example.yahoo.com/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + httpReq.headers().put(HttpHeaders.Names.COOKIE, "XYZ=value"); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + JDiscCookieWrapper[] wrappers = request.getWrappedCookies(); + assertEquals(wrappers.length, 1); + assertEquals(wrappers[0].getName(), "XYZ"); + assertEquals(wrappers[0].getValue(), "value"); } - @Test - public void testClearCookies() { - URI uri = URI.create("http://example.yahoo.com/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - httpReq.headers().put(HttpHeaders.Names.COOKIE, "XYZ=value"); - DiscFilterRequest request = new DiscFilterRequest(httpReq); - request.clearCookies(); - Assert.assertNull(request.getHeader(HttpHeaders.Names.COOKIE)); - } - - @Test - public void testGetWrapedCookies() { - URI uri = URI.create("http://example.yahoo.com/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - httpReq.headers().put(HttpHeaders.Names.COOKIE, "XYZ=value"); - DiscFilterRequest request = new DiscFilterRequest(httpReq); - JDiscCookieWrapper[] wrappers = request.getWrappedCookies(); - Assert.assertEquals(wrappers.length ,1); - Assert.assertEquals(wrappers[0].getName(), "XYZ"); - Assert.assertEquals(wrappers[0].getValue(), "value"); - } - - @Test - public void testAddCookie() { - URI uri = URI.create("http://example.yahoo.com/test"); - HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); - DiscFilterRequest request = new DiscFilterRequest(httpReq); - request.addCookie(JDiscCookieWrapper.wrap(new Cookie("name", "value"))); - - List cookies = request.getCookies(); - Assert.assertEquals(cookies.size(), 1); - Assert.assertEquals(cookies.get(0).getName(), "name"); - Assert.assertEquals(cookies.get(0).getValue(), "value"); - } + @Test + void testAddCookie() { + URI uri = URI.create("http://example.yahoo.com/test"); + HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); + DiscFilterRequest request = new DiscFilterRequest(httpReq); + request.addCookie(JDiscCookieWrapper.wrap(new Cookie("name", "value"))); + + List cookies = request.getCookies(); + assertEquals(cookies.size(), 1); + assertEquals(cookies.get(0).getName(), "name"); + assertEquals(cookies.get(0).getValue(), "value"); + } } diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/filter/DiscFilterResponseTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/filter/DiscFilterResponseTest.java index ace41473eb4..73498e27892 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/filter/DiscFilterResponseTest.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/filter/DiscFilterResponseTest.java @@ -6,15 +6,14 @@ import com.yahoo.jdisc.http.Cookie; import com.yahoo.jdisc.http.HttpRequest; import com.yahoo.jdisc.http.HttpResponse; import com.yahoo.jdisc.test.TestDriver; -import org.junit.Assert; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.net.InetSocketAddress; import java.net.URI; import java.util.Collections; import java.util.List; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.*; public class DiscFilterResponseTest { @@ -33,40 +32,40 @@ public class DiscFilterResponseTest { } @Test - public void testGetSetStatus() { + void testGetSetStatus() { HttpRequest request = newRequest(URI.create("http://localhost:8080/echo"), HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); DiscFilterResponse response = new DiscFilterResponse(HttpResponse.newInstance(HttpResponse.Status.OK)); - Assert.assertEquals(response.getStatus(), HttpResponse.Status.OK); + assertEquals(response.getStatus(), HttpResponse.Status.OK); response.setStatus(HttpResponse.Status.REQUEST_TIMEOUT); - Assert.assertEquals(response.getStatus(), HttpResponse.Status.REQUEST_TIMEOUT); + assertEquals(response.getStatus(), HttpResponse.Status.REQUEST_TIMEOUT); } @Test - public void testAttributes() { + void testAttributes() { HttpRequest request = newRequest(URI.create("http://localhost:8080/echo"), HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); DiscFilterResponse response = new DiscFilterResponse(HttpResponse.newInstance(HttpResponse.Status.OK)); response.setAttribute("attr_1", "value1"); - Assert.assertEquals(response.getAttribute("attr_1"), "value1"); + assertEquals(response.getAttribute("attr_1"), "value1"); List list = Collections.list(response.getAttributeNames()); - Assert.assertEquals(list.get(0), "attr_1"); + assertEquals(list.get(0), "attr_1"); response.removeAttribute("attr_1"); - Assert.assertNull(response.getAttribute("attr_1")); + assertNull(response.getAttribute("attr_1")); } @Test - public void testAddHeader() { + void testAddHeader() { HttpRequest request = newRequest(URI.create("http://localhost:8080/echo"), HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); DiscFilterResponse response = new DiscFilterResponse(HttpResponse.newInstance(HttpResponse.Status.OK)); response.addHeader("header1", "value1"); - Assert.assertEquals(response.getHeader("header1"), "value1"); + assertEquals(response.getHeader("header1"), "value1"); } @Test - public void testAddCookie() { + void testAddCookie() { URI uri = URI.create("http://example.com/test"); HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); HttpResponse httpResp = newResponse(httpReq, 200); @@ -74,31 +73,31 @@ public class DiscFilterResponseTest { response.addCookie(JDiscCookieWrapper.wrap(new Cookie("name", "value"))); List cookies = response.getCookies(); - Assert.assertEquals(cookies.size(),1); - Assert.assertEquals(cookies.get(0).getName(),"name"); + assertEquals(cookies.size(), 1); + assertEquals(cookies.get(0).getName(), "name"); } @Test - public void testSetCookie() { + void testSetCookie() { URI uri = URI.create("http://example.com/test"); HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); HttpResponse httpResp = newResponse(httpReq, 200); DiscFilterResponse response = new DiscFilterResponse(httpResp); response.setCookie("name", "value"); List cookies = response.getCookies(); - Assert.assertEquals(cookies.size(),1); - Assert.assertEquals(cookies.get(0).getName(),"name"); + assertEquals(cookies.size(), 1); + assertEquals(cookies.get(0).getName(), "name"); } @Test - public void testSetHeader() { + void testSetHeader() { URI uri = URI.create("http://example.com/test"); HttpRequest httpReq = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); HttpResponse httpResp = newResponse(httpReq, 200); DiscFilterResponse response = new DiscFilterResponse(httpResp); response.setHeader("name", "value"); - Assert.assertEquals(response.getHeader("name"), "value"); + assertEquals(response.getHeader("name"), "value"); } } diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/filter/EmptyRequestFilterTestCase.java b/container-core/src/test/java/com/yahoo/jdisc/http/filter/EmptyRequestFilterTestCase.java index 214ee6b91cc..dc263bb08a6 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/filter/EmptyRequestFilterTestCase.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/filter/EmptyRequestFilterTestCase.java @@ -6,14 +6,14 @@ import com.yahoo.jdisc.handler.ResponseHandler; import com.yahoo.jdisc.http.HttpRequest; import com.yahoo.jdisc.http.filter.chain.EmptyRequestFilter; import com.yahoo.jdisc.service.CurrentContainer; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.net.URI; import java.util.concurrent.TimeUnit; import static com.yahoo.jdisc.http.HttpRequest.Method; import static com.yahoo.jdisc.http.HttpRequest.Version; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; @@ -24,7 +24,7 @@ import static org.mockito.Mockito.when; public class EmptyRequestFilterTestCase { @Test - public void requireThatEmptyFilterDoesNothing() throws Exception { + void requireThatEmptyFilterDoesNothing() throws Exception { final HttpRequest lhs = newRequest(Method.GET, "/status.html", Version.HTTP_1_1); final HttpRequest rhs = newRequest(Method.GET, "/status.html", Version.HTTP_1_1); diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/filter/EmptyResponseFilterTestCase.java b/container-core/src/test/java/com/yahoo/jdisc/http/filter/EmptyResponseFilterTestCase.java index 91bc0b1aa4c..53e794cef29 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/filter/EmptyResponseFilterTestCase.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/filter/EmptyResponseFilterTestCase.java @@ -7,13 +7,13 @@ import com.yahoo.jdisc.http.HttpRequest; import com.yahoo.jdisc.http.HttpResponse; import com.yahoo.jdisc.http.filter.chain.EmptyResponseFilter; import com.yahoo.jdisc.service.CurrentContainer; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.net.URI; import static com.yahoo.jdisc.http.HttpRequest.Method; import static com.yahoo.jdisc.http.HttpRequest.Version; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; @@ -24,7 +24,7 @@ import static org.mockito.Mockito.when; public class EmptyResponseFilterTestCase { @Test - public void requireThatEmptyFilterDoesNothing() throws Exception { + void requireThatEmptyFilterDoesNothing() throws Exception { final HttpRequest request = newRequest(Method.GET, "/status.html", Version.HTTP_1_1); final HttpResponse lhs = HttpResponse.newInstance(Response.Status.OK); final HttpResponse rhs = HttpResponse.newInstance(Response.Status.OK); diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/filter/JDiscCookieWrapperTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/filter/JDiscCookieWrapperTest.java index 36217012fb0..41d80d16c54 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/filter/JDiscCookieWrapperTest.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/filter/JDiscCookieWrapperTest.java @@ -2,15 +2,16 @@ package com.yahoo.jdisc.http.filter; import com.yahoo.jdisc.http.Cookie; -import org.junit.Assert; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.util.concurrent.TimeUnit; +import static org.junit.jupiter.api.Assertions.assertEquals; + public class JDiscCookieWrapperTest { @Test - public void requireThatWrapWorks() { + void requireThatWrapWorks() { Cookie cookie = new Cookie("name", "value"); JDiscCookieWrapper wrapper = JDiscCookieWrapper.wrap(cookie); @@ -18,12 +19,12 @@ public class JDiscCookieWrapperTest { wrapper.setMaxAge(10); wrapper.setPath("/path"); - Assert.assertEquals(wrapper.getName(), cookie.getName()); - Assert.assertEquals(wrapper.getValue(), cookie.getValue()); - Assert.assertEquals(wrapper.getDomain(), cookie.getDomain()); - Assert.assertEquals(wrapper.getMaxAge(), cookie.getMaxAge(TimeUnit.SECONDS)); - Assert.assertEquals(wrapper.getPath(), cookie.getPath()); - Assert.assertEquals(wrapper.getSecure(), cookie.isSecure()); + assertEquals(wrapper.getName(), cookie.getName()); + assertEquals(wrapper.getValue(), cookie.getValue()); + assertEquals(wrapper.getDomain(), cookie.getDomain()); + assertEquals(wrapper.getMaxAge(), cookie.getMaxAge(TimeUnit.SECONDS)); + assertEquals(wrapper.getPath(), cookie.getPath()); + assertEquals(wrapper.getSecure(), cookie.isSecure()); } } diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/filter/RequestViewImplTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/filter/RequestViewImplTest.java index ab682ea9059..840a5537042 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/filter/RequestViewImplTest.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/filter/RequestViewImplTest.java @@ -5,9 +5,9 @@ import com.google.common.collect.Lists; import com.yahoo.jdisc.HeaderFields; import com.yahoo.jdisc.Request; import com.yahoo.jdisc.http.filter.SecurityResponseFilterChain.RequestViewImpl; -import org.junit.Test; +import org.junit.jupiter.api.Test; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; @@ -17,7 +17,7 @@ import static org.mockito.Mockito.when; public class RequestViewImplTest { @Test - public void header_from_the_parent_request_is_available() throws Exception { + void header_from_the_parent_request_is_available() throws Exception { final String HEADER = "single-header"; HeaderFields parentHeaders = new HeaderFields(); @@ -32,7 +32,7 @@ public class RequestViewImplTest { @Test - public void multi_value_header_from_the_parent_request_is_available() throws Exception { + void multi_value_header_from_the_parent_request_is_available() throws Exception { final String HEADER = "list-header"; HeaderFields parentHeaders = new HeaderFields(); diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/filter/SecurityRequestFilterChainTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/filter/SecurityRequestFilterChainTest.java index 46d6be2e73b..645e523c155 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/filter/SecurityRequestFilterChainTest.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/filter/SecurityRequestFilterChainTest.java @@ -9,8 +9,7 @@ import com.yahoo.jdisc.handler.ResponseDispatch; import com.yahoo.jdisc.handler.ResponseHandler; import com.yahoo.jdisc.http.HttpRequest; import com.yahoo.jdisc.test.TestDriver; -import org.junit.Assert; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.net.InetSocketAddress; import java.net.URI; @@ -18,7 +17,7 @@ import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.List; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.*; /** * @author bjorncs @@ -32,40 +31,40 @@ public class SecurityRequestFilterChainTest { driver.activateContainer(driver.newContainerBuilder()); HttpRequest request = HttpRequest.newServerRequest(driver, uri, method, version, address); request.release(); - Assert.assertTrue(driver.close()); + assertTrue(driver.close()); return request; } @Test - public void testFilterChainConstruction() { - SecurityRequestFilterChain chain = (SecurityRequestFilterChain)SecurityRequestFilterChain.newInstance(); - assertEquals(chain.getFilters().size(),0); + void testFilterChainConstruction() { + SecurityRequestFilterChain chain = (SecurityRequestFilterChain) SecurityRequestFilterChain.newInstance(); + assertEquals(chain.getFilters().size(), 0); List requestFilters = new ArrayList(); - chain = (SecurityRequestFilterChain)SecurityRequestFilterChain.newInstance(); + chain = (SecurityRequestFilterChain) SecurityRequestFilterChain.newInstance(); - chain = (SecurityRequestFilterChain)SecurityRequestFilterChain.newInstance(new RequestHeaderFilter("abc", "xyz"), - new RequestHeaderFilter("pqr", "def")); + chain = (SecurityRequestFilterChain) SecurityRequestFilterChain.newInstance(new RequestHeaderFilter("abc", "xyz"), + new RequestHeaderFilter("pqr", "def")); assertEquals(chain instanceof SecurityRequestFilterChain, true); } @Test - public void testFilterChainRun() { + void testFilterChainRun() { RequestFilter chain = SecurityRequestFilterChain.newInstance(new RequestHeaderFilter("abc", "xyz"), - new RequestHeaderFilter("pqr", "def")); + new RequestHeaderFilter("pqr", "def")); assertEquals(chain instanceof SecurityRequestFilterChain, true); ResponseHandler handler = newResponseHandler(); HttpRequest request = newRequest(URI.create("http://test/test"), HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); chain.filter(request, handler); - Assert.assertTrue(request.headers().contains("abc", "xyz")); - Assert.assertTrue(request.headers().contains("pqr", "def")); + assertTrue(request.headers().contains("abc", "xyz")); + assertTrue(request.headers().contains("pqr", "def")); } @Test - public void testFilterChainResponds() { + void testFilterChainResponds() { RequestFilter chain = SecurityRequestFilterChain.newInstance( new MyFilter(), new RequestHeaderFilter("abc", "xyz"), @@ -76,9 +75,9 @@ public class SecurityRequestFilterChainTest { HttpRequest request = newRequest(URI.create("http://test/test"), HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); chain.filter(request, handler); Response response = getResponse(handler); - Assert.assertNotNull(response); - Assert.assertTrue(!request.headers().contains("abc", "xyz")); - Assert.assertTrue(!request.headers().contains("pqr", "def")); + assertNotNull(response); + assertFalse(request.headers().contains("abc", "xyz")); + assertFalse(request.headers().contains("pqr", "def")); } private class RequestHeaderFilter extends AbstractResource implements SecurityRequestFilter { diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/filter/SecurityResponseFilterChainTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/filter/SecurityResponseFilterChainTest.java index d44fdbfd39b..3f04154e3f8 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/filter/SecurityResponseFilterChainTest.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/filter/SecurityResponseFilterChainTest.java @@ -6,13 +6,13 @@ import com.yahoo.jdisc.Response; import com.yahoo.jdisc.http.HttpRequest; import com.yahoo.jdisc.http.HttpResponse; import com.yahoo.jdisc.test.TestDriver; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.net.InetSocketAddress; import java.net.URI; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; /** * @author bjorncs @@ -29,24 +29,24 @@ public class SecurityResponseFilterChainTest { } @Test - public void testFilterChainConstruction() { - SecurityResponseFilterChain chain = (SecurityResponseFilterChain)SecurityResponseFilterChain.newInstance(); - assertEquals(chain.getFilters().size(),0); + void testFilterChainConstruction() { + SecurityResponseFilterChain chain = (SecurityResponseFilterChain) SecurityResponseFilterChain.newInstance(); + assertEquals(chain.getFilters().size(), 0); - chain = (SecurityResponseFilterChain)SecurityResponseFilterChain.newInstance(new ResponseHeaderFilter("abc", "xyz"), - new ResponseHeaderFilter("pqr", "def")); + chain = (SecurityResponseFilterChain) SecurityResponseFilterChain.newInstance(new ResponseHeaderFilter("abc", "xyz"), + new ResponseHeaderFilter("pqr", "def")); assertEquals(chain instanceof SecurityResponseFilterChain, true); } @Test - public void testFilterChainRun() { + void testFilterChainRun() { URI uri = URI.create("http://localhost:8080/echo"); HttpRequest request = newRequest(uri, HttpRequest.Method.GET, HttpRequest.Version.HTTP_1_1); Response response = HttpResponse.newInstance(Response.Status.OK); ResponseFilter chain = SecurityResponseFilterChain.newInstance(new ResponseHeaderFilter("abc", "xyz"), - new ResponseHeaderFilter("pqr", "def")); + new ResponseHeaderFilter("pqr", "def")); chain.filter(response, null); assertTrue(response.headers().contains("abc", "xyz")); assertTrue(response.headers().contains("pqr", "def")); diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/filter/util/FilterUtilsTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/filter/util/FilterUtilsTest.java index 16883f1a48e..b53479abdd8 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/filter/util/FilterUtilsTest.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/filter/util/FilterUtilsTest.java @@ -4,14 +4,14 @@ package com.yahoo.jdisc.http.filter.util; import com.yahoo.container.jdisc.RequestHandlerTestDriver; import com.yahoo.jdisc.Response; import com.yahoo.jdisc.http.Cookie; -import org.junit.Test; +import org.junit.jupiter.api.Test; import java.util.List; import java.util.Map; import static com.yahoo.jdisc.http.filter.util.FilterUtils.sendMessageResponse; import static com.yahoo.jdisc.http.filter.util.FilterUtils.sendRedirectResponse; -import static org.junit.Assert.assertEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; /** * @author valerijf @@ -21,7 +21,7 @@ public class FilterUtilsTest { private static final List cookies = List.of(new Cookie("my-cookie", "value1"), new Cookie("second-cookie", "value2")); @Test - public void redirect_test() { + void redirect_test() { RequestHandlerTestDriver.MockResponseHandler responseHandler = new RequestHandlerTestDriver.MockResponseHandler(); String location = "http://domain.tld/path?query"; @@ -31,7 +31,7 @@ public class FilterUtilsTest { } @Test - public void message_response() { + void message_response() { RequestHandlerTestDriver.MockResponseHandler responseHandler = new RequestHandlerTestDriver.MockResponseHandler(); sendMessageResponse(responseHandler, List.of(), 404, "Not found"); 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 = "\n" + - "\n" + - "\n" + - "Error 200\n" + - "\n" + - "\n" + - "

HTTP ERROR: 200

\n" + - "

Problem accessing http://foo.bar. Reason:\n" + - "

    My custom error message

\n" + - "
\n" + - "\n" + - "\n"; + "\n" + + "\n" + + "Error 200\n" + + "\n" + + "\n" + + "

HTTP ERROR: 200

\n" + + "

Problem accessing http://foo.bar. Reason:\n" + + "

    My custom error message

\n" + + "
\n" + + "\n" + + "\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 'unknown'\\.\n\tat .+", - Pattern.DOTALL | Pattern.MULTILINE))); + .expectStatusCode(is(NOT_FOUND)) + .expectContent(containsPattern(Pattern.compile( + Pattern.quote(BindingSetNotFoundException.class.getName()) + + ": No binding set named 'unknown'\\.\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 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 matcher) { - MatcherAssert.assertThat(response.getCode(), matcher); + assertThat(response.getCode(), matcher); return this; } public ResponseValidator expectHeader(String headerName, Matcher 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 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))); } diff --git a/container-core/src/test/java/com/yahoo/jdisc/http/ssl/impl/TlsContextBasedProviderTest.java b/container-core/src/test/java/com/yahoo/jdisc/http/ssl/impl/TlsContextBasedProviderTest.java index e8e358252dc..a192c49aeb9 100644 --- a/container-core/src/test/java/com/yahoo/jdisc/http/ssl/impl/TlsContextBasedProviderTest.java +++ b/container-core/src/test/java/com/yahoo/jdisc/http/ssl/impl/TlsContextBasedProviderTest.java @@ -9,7 +9,7 @@ import com.yahoo.security.tls.DefaultTlsContext; import com.yahoo.security.tls.HostnameVerification; import com.yahoo.security.tls.PeerAuthentication; import com.yahoo.security.tls.TlsContext; -import org.junit.Test; +import org.junit.jupiter.api.Test; import javax.security.auth.x500.X500Principal; import java.math.BigInteger; @@ -22,7 +22,7 @@ import java.util.Set; import static com.yahoo.security.KeyAlgorithm.EC; import static com.yahoo.security.SignatureAlgorithm.SHA256_WITH_ECDSA; -import static org.junit.Assert.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; /** * @author bjorncs @@ -30,7 +30,7 @@ import static org.junit.Assert.assertArrayEquals; public class TlsContextBasedProviderTest { @Test - public void creates_sslcontextfactory_from_tlscontext() { + void creates_sslcontextfactory_from_tlscontext() { TlsContext tlsContext = createTlsContext(); var provider = new SimpleTlsContextBasedProvider(tlsContext); DefaultConnectorSsl ssl = new DefaultConnectorSsl(); -- cgit v1.2.3