DATAES-673 Create a Ssl Rest Client using SslContext and HostnameVerifier

Original PR: #334
This commit is contained in:
Henrique Amaral
2019-10-22 19:02:19 +02:00
committed by Peter-Josef Meisch
parent 38353e5bdd
commit f7f103d331
5 changed files with 77 additions and 2 deletions

View File

@@ -23,6 +23,7 @@ import java.time.Duration;
import javax.net.ssl.SSLContext;
import org.apache.http.conn.ssl.NoopHostnameVerifier;
import org.junit.Test;
import org.springframework.http.HttpHeaders;
@@ -32,6 +33,7 @@ import org.springframework.http.HttpHeaders;
* @author Mark Paluch
* @author Peter-Josef Meisch
* @author Huw Ayling-Miller
* @author Henrique Amaral
*/
public class ClientConfigurationUnitTests {
@@ -120,6 +122,25 @@ public class ClientConfigurationUnitTests {
assertThat(defaultHeaders.get(HttpHeaders.AUTHORIZATION)).isNull();
}
@Test // DATAES-673
public void shouldCreateSslConfigurationWithHostnameVerifier() {
SSLContext sslContext = mock(SSLContext.class);
ClientConfiguration clientConfiguration = ClientConfiguration.builder() //
.connectedTo("foo", "bar") //
.usingSsl(sslContext, NoopHostnameVerifier.INSTANCE) //
.build();
assertThat(clientConfiguration.getEndpoints()).containsOnly(InetSocketAddress.createUnresolved("foo", 9200),
InetSocketAddress.createUnresolved("bar", 9200));
assertThat(clientConfiguration.useSsl()).isTrue();
assertThat(clientConfiguration.getSslContext()).contains(sslContext);
assertThat(clientConfiguration.getConnectTimeout()).isEqualTo(Duration.ofSeconds(10));
assertThat(clientConfiguration.getSocketTimeout()).isEqualTo(Duration.ofSeconds(5));
assertThat(clientConfiguration.getHostNameVerifier()).contains(NoopHostnameVerifier.INSTANCE);
}
private static String buildBasicAuth(String username, String password) {
HttpHeaders headers = new HttpHeaders();