@@ -86,22 +86,21 @@ public class HeadTest implements HttpServerAdapters {
8686 @ DataProvider (name = "positive" )
8787 public Object [][] positive () {
8888 return new Object [][] {
89+ // HTTP/1.1
8990 { httpURI , "GET" , HTTP_NOT_MODIFIED , HTTP_1_1 },
9091 { httpsURI , "GET" , HTTP_NOT_MODIFIED , HTTP_1_1 },
91- { httpURI , "GET" , HTTP_NOT_MODIFIED , HttpClient .Version .HTTP_2 },
92- { httpsURI , "GET" , HTTP_NOT_MODIFIED , HttpClient .Version .HTTP_2 },
9392 { httpURI , "HEAD" , HTTP_OK , HTTP_1_1 },
9493 { httpsURI , "HEAD" , HTTP_OK , HTTP_1_1 },
95- { httpURI , "HEAD" , HTTP_OK , HttpClient .Version .HTTP_2 },
96- { httpsURI , "HEAD" , HTTP_OK , HttpClient .Version .HTTP_2 },
9794 { httpURI + "transfer/" , "GET" , HTTP_NOT_MODIFIED , HTTP_1_1 },
9895 { httpsURI + "transfer/" , "GET" , HTTP_NOT_MODIFIED , HTTP_1_1 },
99- { httpURI + "transfer/" , "GET" , HTTP_NOT_MODIFIED , HttpClient .Version .HTTP_2 },
100- { httpsURI + "transfer/" , "GET" , HTTP_NOT_MODIFIED , HttpClient .Version .HTTP_2 },
10196 { httpURI + "transfer/" , "HEAD" , HTTP_OK , HTTP_1_1 },
10297 { httpsURI + "transfer/" , "HEAD" , HTTP_OK , HTTP_1_1 },
103- { httpURI + "transfer/" , "HEAD" , HTTP_OK , HttpClient .Version .HTTP_2 },
104- { httpsURI + "transfer/" , "HEAD" , HTTP_OK , HttpClient .Version .HTTP_2 }
98+ // HTTP/2
99+ { http2URI , "GET" , HTTP_NOT_MODIFIED , HttpClient .Version .HTTP_2 },
100+ { https2URI , "GET" , HTTP_NOT_MODIFIED , HttpClient .Version .HTTP_2 },
101+ { http2URI , "HEAD" , HTTP_OK , HttpClient .Version .HTTP_2 },
102+ { https2URI , "HEAD" , HTTP_OK , HttpClient .Version .HTTP_2 },
103+ // HTTP2 forbids transfer-encoding
105104 };
106105 }
107106
@@ -112,17 +111,13 @@ void test(String uriString, String method,
112111 URI uri = URI .create (uriString );
113112 HttpRequest .Builder requestBuilder = HttpRequest
114113 .newBuilder (uri )
114+ .version (version )
115115 .method (method , HttpRequest .BodyPublishers .noBody ());
116- if (version != null ) {
117- requestBuilder .version (version );
118- }
119116 doTest (requestBuilder .build (), expResp );
120117 // repeat the test this time by building the request using convenience
121118 // GET and HEAD methods
122- requestBuilder = HttpRequest .newBuilder (uri );
123- if (version != null ) {
124- requestBuilder .version (version );
125- }
119+ requestBuilder = HttpRequest .newBuilder (uri )
120+ .version (version );
126121 switch (method ) {
127122 case "GET" -> requestBuilder .GET ();
128123 case "HEAD" -> requestBuilder .HEAD ();
@@ -146,6 +141,7 @@ private void doTest(HttpRequest request, int expResp) throws Exception {
146141 assertEquals (response .statusCode (), expResp );
147142 assertEquals (response .body (), "" );
148143 assertEquals (response .headers ().firstValue ("Content-length" ).get (), CONTENT_LEN );
144+ assertEquals (response .version (), request .version ().get ());
149145 }
150146
151147 // -- Infrastructure
@@ -168,7 +164,7 @@ public void setup() throws Exception {
168164 http2TestServer = HttpTestServer .create (HTTP_2 );
169165 http2TestServer .addHandler (new HeadHandler (), "/" );
170166 http2URI = "http://" + http2TestServer .serverAuthority () + "/" ;
171- https2TestServer = HttpTestServer .create (HTTP_2 , SSLContext . getDefault () );
167+ https2TestServer = HttpTestServer .create (HTTP_2 , sslContext );
172168 https2TestServer .addHandler (new HeadHandler (), "/" );
173169 https2URI = "https://" + https2TestServer .serverAuthority () + "/" ;
174170
0 commit comments