[Test] Modify assert statement for ssl handshake (#32072)

There have been changes in error messages for `SSLHandshakeException`.
This has caused a couple of failures in our tests.
This commit modifies test verification to assert on exception type of
class `SSLHandshakeException`.
There was another issue in Java11 which caused NPE. The bug has now
been fixed on Java11 - early access build 22.
Bug Ref: https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8206355
Enable the skipped tests due to this bug.

Closes #31940
This commit is contained in:
Yogesh Gaikwad 2018-07-17 15:43:03 +10:00 committed by GitHub
parent 4b5071f2d0
commit 6717df3c2d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 3 additions and 6 deletions

View File

@ -30,6 +30,7 @@ import org.junit.BeforeClass;
import javax.net.ssl.KeyManagerFactory; import javax.net.ssl.KeyManagerFactory;
import javax.net.ssl.SSLContext; import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLHandshakeException;
import javax.net.ssl.TrustManagerFactory; import javax.net.ssl.TrustManagerFactory;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
@ -37,7 +38,7 @@ import java.net.InetAddress;
import java.net.InetSocketAddress; import java.net.InetSocketAddress;
import java.security.KeyStore; import java.security.KeyStore;
import static org.hamcrest.Matchers.containsString; import static org.hamcrest.Matchers.instanceOf;
import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertThat; import static org.junit.Assert.assertThat;
import static org.junit.Assert.fail; import static org.junit.Assert.fail;
@ -72,9 +73,6 @@ public class RestClientBuilderIntegTests extends RestClientTestCase {
} }
public void testBuilderUsesDefaultSSLContext() throws Exception { public void testBuilderUsesDefaultSSLContext() throws Exception {
assumeFalse("Due to bug inside jdk, this test can't momentarily run with java 11. " +
"See: https://github.com/elastic/elasticsearch/issues/31940",
System.getProperty("java.version").contains("11"));
final SSLContext defaultSSLContext = SSLContext.getDefault(); final SSLContext defaultSSLContext = SSLContext.getDefault();
try { try {
try (RestClient client = buildRestClient()) { try (RestClient client = buildRestClient()) {
@ -82,7 +80,7 @@ public class RestClientBuilderIntegTests extends RestClientTestCase {
client.performRequest(new Request("GET", "/")); client.performRequest(new Request("GET", "/"));
fail("connection should have been rejected due to SSL handshake"); fail("connection should have been rejected due to SSL handshake");
} catch (Exception e) { } catch (Exception e) {
assertThat(e.getMessage(), containsString("General SSLEngine problem")); assertThat(e, instanceOf(SSLHandshakeException.class));
} }
} }

View File

@ -127,7 +127,6 @@ public class SmokeTestMonitoringWithSecurityIT extends ESIntegTestCase {
return monitoringUsage.get().getExporters().isEmpty() == false; return monitoringUsage.get().getExporters().isEmpty() == false;
} }
@AwaitsFix(bugUrl = "https://github.com/elastic/elasticsearch/issues/31940")
public void testHTTPExporterWithSSL() throws Exception { public void testHTTPExporterWithSSL() throws Exception {
// Ensures that the exporter is actually on // Ensures that the exporter is actually on
assertBusy(() -> assertThat("[_http] exporter is not defined", getMonitoringUsageExportersDefined(), is(true))); assertBusy(() -> assertThat("[_http] exporter is not defined", getMonitoringUsageExportersDefined(), is(true)));