RFR: 8331334: com/sun/net/httpserver/HttpsParametersClientAuthTest.java fails in testServerNeedClientAuth(false)
Jaikiran Pai
jpai at openjdk.org
Mon May 6 05:36:10 UTC 2024
On Sun, 5 May 2024 07:13:35 GMT, Jaikiran Pai <jpai at openjdk.org> wrote:
> Can I get a review of this test-only fix which addresses the intermittent failrues in `com/sun/net/httpserver/HttpsParametersClientAuthTest.java` on Windows?
>
> As noted in https://bugs.openjdk.org/browse/JDK-8331334, the test relies on the TLS communication (of a HTTP request) to fail and then asserts on the exception types. On Windows, sometimes the exception type differs, although the underlying failure is the expected failure.
>
> The commit in this PR adds an additional condition to allow for `IOException` to be thrown when on Windows. The exception type and message check is additionally only added for Windows and the message check is very specific intentionally, to make sure we don't allow any `IOException` to result in the test passing. The usage of the `WSAECONNABORTED_MSG` has a precedent in `test/jdk/java/net/httpclient/HandshakeFailureTest.java`, so I think that should be OK in this test too.
>
> With these changes the test hasn't failed in a test repeat of 100. Without the changes, the test fails around 15 times in a test repeat of 100. Additionally tier1, tier2 and tier3 tests have been run with this change and those tests continue to pass.
Daniel J rightly noted that the exception message could be localized by the OS and thus it's not a good idea to check for that message in the test. I've now updated the PR to remove the check of the error message. The test continues to pass on Windows and other OS, with this change.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/19091#issuecomment-2095225879
More information about the net-dev
mailing list