On Mon, 12 Sep 2022 12:55:12 GMT, Jaikiran Pai <j...@openjdk.org> wrote:
>> test/jdk/java/net/HttpURLConnection/Response1xxTest.java line 225: >> >>> 223: final HttpURLConnection urlConnection = (HttpURLConnection) >>> requestURI.toURL().openConnection(); >>> 224: // we expect the request to fail because the server >>> unexpectedly sends a 101 response >>> 225: Assert.assertThrows(IOException.class, () -> >>> urlConnection.getResponseCode()); >> >> Should we explicitly wait for ProtocolException here, since it's what we're >> throwing? > > I initially thought about that, but since the API javadoc doesn't > specifically talk about this sub-type of `IOException`, I decided it's > perhaps better not to start expecting it. However, if it's OK for the test to > rely on this (internal) knowledge then I'll go ahead and change it. Yes - this is not a conformance test, and ProtocolException is within the bounds. It's OK for a non-regression test to expect the specific subtype that the code change is throwing. My concern here is that the test could be passing if some other kind of errors occurred - like e.g. connect exception. Then we wouldn't be testing what we think we're testing. ------------- PR: https://git.openjdk.org/jdk/pull/10229