< prev index next >

test/jdk/java/net/httpclient/http2/server/Http2TestExchangeImpl.java

Print this page
rev 54109 : 8244031: HttpClient should have more tests for HEAD requests
Summary: Http2TestExchangeImpl.java updated to support HEAD responses; ForbiddenHeadTest.java added.
Reviewed-by: chegar, michaelm

*** 35,44 **** --- 35,45 ---- import jdk.internal.net.http.frame.HeaderFrame; import jdk.internal.net.http.frame.HeadersFrame; public class Http2TestExchangeImpl implements Http2TestExchange { + static final String HEAD = "HEAD"; final HttpHeaders reqheaders; final HttpHeadersBuilder rspheadersBuilder; final URI uri; final String method; final InputStream is;
*** 127,137 **** } @Override public void sendResponseHeaders(int rCode, long responseLength) throws IOException { this.responseLength = responseLength; ! if (responseLength !=0 && rCode != 204) { long clen = responseLength > 0 ? responseLength : 0; rspheadersBuilder.setHeader("Content-length", Long.toString(clen)); } rspheadersBuilder.setHeader(":status", Integer.toString(rCode)); --- 128,138 ---- } @Override public void sendResponseHeaders(int rCode, long responseLength) throws IOException { this.responseLength = responseLength; ! if (responseLength !=0 && rCode != 204 && !isHeadRequest()) { long clen = responseLength > 0 ? responseLength : 0; rspheadersBuilder.setHeader("Content-length", Long.toString(clen)); } rspheadersBuilder.setHeader(":status", Integer.toString(rCode));
*** 196,201 **** --- 197,206 ---- // writeLoop will spin up thread to read the InputStream } catch (IOException ex) { System.err.println("TestServer: pushPromise exception: " + ex); } } + + private boolean isHeadRequest() { + return HEAD.equalsIgnoreCase(getRequestMethod()); + } }
< prev index next >