fix https bug 69/41569/2
authorShiwei Tian <tian.shiwei@zte.com.cn>
Sun, 8 Apr 2018 09:34:12 +0000 (17:34 +0800)
committerShiwei Tian <tian.shiwei@zte.com.cn>
Mon, 9 Apr 2018 00:56:27 +0000 (08:56 +0800)
Issue-ID: HOLMES-104

Change-Id: I9146e6f89d9e72744eadd46f28b2ad10eefcfb40
Signed-off-by: Shiwei Tian <tian.shiwei@zte.com.cn>
holmes-actions/src/main/java/org/onap/holmes/common/aai/AaiQuery.java
holmes-actions/src/main/java/org/onap/holmes/common/dmaap/Publisher.java
holmes-actions/src/main/java/org/onap/holmes/common/utils/HttpsUtils.java
holmes-actions/src/test/java/org/onap/holmes/common/aai/AaiQueryTest.java
holmes-actions/src/test/java/org/onap/holmes/common/dmaap/PublisherTest.java
holmes-actions/src/test/java/org/onap/holmes/common/utils/HttpsUtilsTest.java
pom.xml

index ef96476..b3f3f3a 100644 (file)
  */
 package org.onap.holmes.common.aai;
 
+import java.io.IOException;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import javax.inject.Inject;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.http.HttpResponse;
+import org.apache.http.impl.client.CloseableHttpClient;
 import org.jvnet.hk2.annotations.Service;
 import org.onap.holmes.common.aai.config.AaiConfig;
 import org.onap.holmes.common.aai.entity.VmEntity;
@@ -139,11 +141,21 @@ public class AaiQuery {
 
     private String getResponse(String url) throws CorrelationException {
         String response;
+        CloseableHttpClient httpClient = null;
         try {
-            HttpResponse httpResponse = HttpsUtils.get(url, getHeaders());
+            httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT);
+            HttpResponse httpResponse = HttpsUtils.get(url, getHeaders(), httpClient);
             response = HttpsUtils.extractResponseEntity(httpResponse);
         } catch (Exception e) {
             throw new CorrelationException("Failed to get data from aai", e);
+        } finally {
+            if (httpClient != null) {
+                try {
+                    httpClient.close();
+                } catch (IOException e) {
+                    log.warn("Failed to close http client!");
+                }
+            }
         }
         return response;
     }
index ad5109b..adddd65 100644 (file)
@@ -15,6 +15,9 @@
  */\r
 package org.onap.holmes.common.dmaap;\r
 \r
+import java.io.IOException;\r
+import lombok.extern.slf4j.Slf4j;\r
+import org.apache.http.impl.client.CloseableHttpClient;\r
 import org.onap.holmes.common.dmaap.entity.PolicyMsg;\r
 import org.onap.holmes.common.exception.CorrelationException;\r
 import com.alibaba.fastjson.JSON;\r
@@ -31,6 +34,7 @@ import org.onap.holmes.common.utils.HttpsUtils;
 @Getter\r
 @Setter\r
 @Service\r
+@Slf4j\r
 public class Publisher {\r
 \r
     private String topic;\r
@@ -50,10 +54,20 @@ public class Publisher {
         HashMap<String, String> headers = new HashMap<>();\r
         headers.put("Accept", MediaType.APPLICATION_JSON);\r
         headers.put("Content-Type", MediaType.APPLICATION_JSON);\r
+        CloseableHttpClient httpClient = null;\r
         try {\r
-            httpResponse = HttpsUtils.post(url, headers, new HashMap<>(), new StringEntity(content, "utf-8"));\r
+            httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT);\r
+            httpResponse = HttpsUtils.post(url, headers, new HashMap<>(), new StringEntity(content, "utf-8"), httpClient);\r
         } catch (Exception e) {\r
             throw new CorrelationException("Failed to connect to DCAE.", e);\r
+        } finally {\r
+            if (httpClient != null) {\r
+                try {\r
+                    httpClient.close();\r
+                } catch (IOException e) {\r
+                    log.warn("Failed to close http client!");\r
+                }\r
+            }\r
         }\r
         return checkStatus(httpResponse);\r
     }\r
index 8b88fd2..29a1c91 100644 (file)
@@ -55,10 +55,10 @@ import org.onap.holmes.common.exception.CorrelationException;
 public class HttpsUtils {
     private static final String HTTP = "http";
     private static final String HTTPS = "https";
-    private static final int DEFUALT_TIMEOUT = 30000;
     private static SSLConnectionSocketFactory sslConnectionSocketFactory = null;
     private static PoolingHttpClientConnectionManager connectionManager = null;
     private static SSLContextBuilder sslContextBuilder = null;
+    public static final int DEFUALT_TIMEOUT = 30000;
 
     static{
         try {
@@ -84,16 +84,10 @@ public class HttpsUtils {
     }
 
     public static HttpResponse post(String url, Map<String, String> header, Map<String, String> param,
-            HttpEntity entity) throws CorrelationException {
-        return post(url, header, param, entity, DEFUALT_TIMEOUT);
-    }
-
-    public static HttpResponse post(String url, Map<String, String> header, Map<String, String> param,
-            HttpEntity entity, int timeout) throws CorrelationException {
+            HttpEntity entity, CloseableHttpClient httpClient) throws CorrelationException {
         HttpResponse response;
         HttpPost httpPost = new HttpPost(url);
         try {
-            CloseableHttpClient httpClient = getHttpClient(timeout);
             addHeaders(header, httpPost);
             addParams(param, httpPost);
             if (entity != null) {
@@ -107,16 +101,10 @@ public class HttpsUtils {
     }
 
     public static HttpResponse put(String url, Map<String, String> header, Map<String, String> param,
-            HttpEntity entity) throws CorrelationException {
-        return put(url, header, param, entity, DEFUALT_TIMEOUT);
-    }
-
-    public static HttpResponse put(String url, Map<String, String> header, Map<String, String> param,
-            HttpEntity entity, int timeout) throws CorrelationException {
+            HttpEntity entity, CloseableHttpClient httpClient) throws CorrelationException {
         HttpResponse response;
         HttpPut httpPut = new HttpPut(url);
         try {
-            CloseableHttpClient httpClient = getHttpClient(timeout);
             addHeaders(header, httpPut);
             addParams(param, httpPut);
             if (entity != null) {
@@ -129,15 +117,10 @@ public class HttpsUtils {
         return response;
     }
 
-    public static HttpResponse get(String url, Map<String, String> header) throws CorrelationException {
-        return get(url, header, DEFUALT_TIMEOUT);
-    }
-
-    public static HttpResponse get(String url, Map<String, String> header, int timeout) throws CorrelationException {
+    public static HttpResponse get(String url, Map<String, String> header, CloseableHttpClient httpClient) throws CorrelationException {
         HttpResponse response;
         HttpGet httpGet = new HttpGet(url);
         try {
-            CloseableHttpClient httpClient = getHttpClient(timeout);
             addHeaders(header, httpGet);
             response = executeRequest(httpClient, httpGet);
         } catch (Exception e) {
@@ -146,15 +129,10 @@ public class HttpsUtils {
         return response;
     }
 
-    public static HttpResponse delete(String url, Map<String, String> header) throws CorrelationException {
-        return delete(url, header, DEFUALT_TIMEOUT);
-    }
-
-    public static HttpResponse delete(String url, Map<String, String> header, int timeout) throws CorrelationException {
+    public static HttpResponse delete(String url, Map<String, String> header, CloseableHttpClient httpClient) throws CorrelationException {
         HttpResponse response;
         HttpDelete httpDelete = new HttpDelete(url);
         try {
-            CloseableHttpClient httpClient = getHttpClient(timeout);
             addHeaders(header, httpDelete);
             response = executeRequest(httpClient, httpDelete);
         } catch (Exception e) {
@@ -218,7 +196,7 @@ public class HttpsUtils {
         return httpResponse;
     }
 
-    private static CloseableHttpClient getHttpClient(int timeout) throws Exception {
+    public static CloseableHttpClient getHttpClient(int timeout) {
         RequestConfig defaultRequestConfig = RequestConfig.custom()
                 .setSocketTimeout(timeout)
                 .setConnectTimeout(timeout)
index 44e39b1..f6488c2 100644 (file)
@@ -23,6 +23,8 @@ import static org.powermock.api.mockito.PowerMockito.when;
 import java.util.HashMap;
 import java.util.Map;
 import org.apache.http.HttpResponse;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.easymock.EasyMock;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.rules.ExpectedException;
@@ -96,7 +98,9 @@ public class AaiQueryTest {
         headers.put("Accept", "application/json");
         String url = "http://10.96.33.33/api/aai-cloudInfrastructure/v11";
         HttpResponse httpResponse = PowerMock.createMock(HttpResponse.class);
-        when(HttpsUtils.get(url, headers)).thenReturn(httpResponse);
+        CloseableHttpClient httpClient = PowerMock.createMock(CloseableHttpClient.class);
+        when(HttpsUtils.getHttpClient(30000)).thenReturn(httpClient);
+        when(HttpsUtils.get(url, headers, httpClient)).thenReturn(httpResponse);
         when(HttpsUtils.extractResponseEntity(httpResponse)).thenReturn("{}");
 
         PowerMockito.mockStatic(MicroServiceConfig.class);
@@ -104,6 +108,8 @@ public class AaiQueryTest {
 
         PowerMock.expectPrivate(aaiQuery, "getVmResourceLinks", "test1", "test2")
                 .andReturn("/aai/v11/cloud-infrastructure");
+        PowerMock.expectPrivate(httpClient, "close");
+        EasyMock.expectLastCall();
         PowerMock.replayAll();
         VmEntity vmEntity = Whitebox.invokeMethod(aaiQuery, "getAaiVmData", "test1", "test2");
         PowerMock.verifyAll();
@@ -128,14 +134,15 @@ public class AaiQueryTest {
         headers.put("Authorization", AaiConfig.getAuthenticationCredentials());
         headers.put("Accept", "application/json");
         String url = "http://10.96.33.33/api/aai-cloudInfrastructure/v11";
-
-        when(HttpsUtils.get(url, headers)).thenThrow(new CorrelationException(""));
-
+        CloseableHttpClient httpClient = PowerMock.createMock(CloseableHttpClient.class);
+        when(HttpsUtils.getHttpClient(30000)).thenReturn(httpClient);
+        when(HttpsUtils.get(url, headers, httpClient)).thenThrow(new CorrelationException(""));
         PowerMockito.mockStatic(MicroServiceConfig.class);
         when(MicroServiceConfig.getMsbServerAddrWithHttpPrefix()).thenReturn("http://10.96.33.33:80");
-
         PowerMock.expectPrivate(aaiQuery, "getVmResourceLinks", "test1", "test2")
                 .andReturn("/aai/v11/cloud-infrastructure");
+        PowerMock.expectPrivate(httpClient,"close");
+        EasyMock.expectLastCall();
         PowerMock.replayAll();
         Whitebox.invokeMethod(aaiQuery, "getAaiVmData", "test1", "test2");
         PowerMock.verifyAll();
@@ -212,8 +219,12 @@ public class AaiQueryTest {
         String url = "host_url";
 
         HttpResponse httpResponse = PowerMock.createMock(HttpResponse.class);
-        when(HttpsUtils.get(url, headers)).thenReturn(httpResponse);
+        CloseableHttpClient httpClient = PowerMock.createMock(CloseableHttpClient.class);
+        when(HttpsUtils.getHttpClient(30000)).thenReturn(httpClient);
+        when(HttpsUtils.get(url, headers, httpClient)).thenReturn(httpResponse);
         when(HttpsUtils.extractResponseEntity(httpResponse)).thenReturn("");
+        PowerMock.expectPrivate(httpClient, "close");
+        EasyMock.expectLastCall();
 
         PowerMock.replayAll();
         String resource = Whitebox.invokeMethod(aaiQuery, "getResponse", "host_url");
@@ -236,7 +247,11 @@ public class AaiQueryTest {
         headers.put("Authorization", AaiConfig.getAuthenticationCredentials());
         headers.put("Accept", "application/json");
         String url = "host_url";
-        when(HttpsUtils.get(url, headers)).thenThrow(new CorrelationException(""));
+        CloseableHttpClient httpClient = PowerMock.createMock(CloseableHttpClient.class);
+        when(HttpsUtils.getHttpClient(30000)).thenReturn(httpClient);
+        when(HttpsUtils.get(url, headers, httpClient)).thenThrow(new CorrelationException(""));
+        PowerMock.expectPrivate(httpClient, "close");
+        EasyMock.expectLastCall();
         PowerMock.replayAll();
         String resource = Whitebox.invokeMethod(aaiQuery, "getResponse", "host_url");
         PowerMock.verifyAll();
index 164c176..95bde25 100644 (file)
@@ -30,6 +30,7 @@ import org.apache.http.HttpResponse;
 import org.apache.http.HttpStatus;
 import org.apache.http.StatusLine;
 import org.apache.http.entity.StringEntity;
+import org.apache.http.impl.client.CloseableHttpClient;
 import org.easymock.EasyMock;
 import org.junit.Rule;
 import org.junit.Test;
@@ -73,8 +74,10 @@ public class PublisherTest {
 
         PowerMockito.mockStatic(HttpsUtils.class);
         HttpResponse httpResponse = PowerMockito.mock(HttpResponse.class);
-        PowerMockito.when(HttpsUtils.post(Matchers.eq("http://localhost/dmaapTopic"),
-                Matchers.any(HashMap.class), Matchers.any(HashMap.class), Matchers.any(StringEntity.class))).thenReturn(httpResponse);
+        PowerMockito.when(HttpsUtils
+                .post(Matchers.eq("http://localhost/dmaapTopic"), Matchers.any(HashMap.class),
+                        Matchers.any(HashMap.class), Matchers.any(StringEntity.class),
+                        Matchers.any(CloseableHttpClient.class))).thenReturn(httpResponse);
         StatusLine statusLine = PowerMockito.mock(StatusLine.class);
         PowerMockito.when(httpResponse.getStatusLine()).thenReturn(statusLine);
         PowerMockito.when(statusLine.getStatusCode()).thenReturn(HttpStatus.SC_OK);
index 21bf0e2..c47542b 100644 (file)
@@ -43,6 +43,7 @@ import org.junit.rules.ExpectedException;
 import org.junit.runner.RunWith;
 import org.onap.holmes.common.exception.CorrelationException;
 import org.powermock.api.easymock.PowerMock;
+import org.powermock.core.classloader.annotations.PowerMockIgnore;
 import org.powermock.core.classloader.annotations.PrepareForTest;
 import org.powermock.modules.junit4.PowerMockRunner;
 import org.powermock.reflect.Whitebox;
@@ -50,6 +51,7 @@ import org.powermock.reflect.Whitebox;
 @PrepareForTest({CloseableHttpClient.class, HttpClientBuilder.class, HttpClients.class, CloseableHttpResponse.class,
         StatusLine.class})
 @RunWith(PowerMockRunner.class)
+@PowerMockIgnore("javax.net.ssl.*")
 public class HttpsUtilsTest {
 
     @Rule
@@ -64,28 +66,22 @@ public class HttpsUtilsTest {
 
     @Test
     public void testHttpsUtil_get_excepiton() throws Exception {
+        PowerMock.resetAll();
         thrown.expect(CorrelationException.class);
         thrown.expectMessage("Failed to query data from server through GET method!");
         String url = "host";
         Map<String, String> header = new HashMap<>();
         header.put("accept", "application/json");
-        HttpResponse httpResponse = HttpsUtils.get(url, header);
+        CloseableHttpClient httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT);
+        HttpResponse httpResponse = HttpsUtils.get(url, header, httpClient);
         String response = HttpsUtils.extractResponseEntity(httpResponse);
         assertThat(response, equalTo(""));
     }
 
     @Test
     public void testHttpsUtil_get_normal() throws Exception {
-        HttpClientBuilder hcb = PowerMock.createMock(HttpClientBuilder.class);
+        PowerMock.resetAll();
         CloseableHttpClient httpClient = PowerMock.createMock(CloseableHttpClient.class);
-        PowerMock.mockStatic(HttpClients.class);
-        EasyMock.expect(HttpClients.custom()).andReturn(hcb);
-        EasyMock.expect(hcb.setDefaultRequestConfig(EasyMock.anyObject(RequestConfig.class))).andReturn(hcb);
-        EasyMock.expect(hcb.setSSLSocketFactory(EasyMock.anyObject(SSLConnectionSocketFactory.class))).andReturn(hcb);
-        EasyMock.expect(hcb.setConnectionManager(EasyMock.anyObject(PoolingHttpClientConnectionManager.class))).andReturn(hcb);
-        EasyMock.expect(hcb.setConnectionManagerShared(true)).andReturn(hcb);
-        EasyMock.expect(hcb.build()).andReturn(httpClient);
-
         CloseableHttpResponse response = PowerMock.createMock(CloseableHttpResponse.class);
         EasyMock.expect(httpClient.execute(EasyMock.anyObject(HttpRequestBase.class))).andReturn(response);
         StatusLine sl = PowerMock.createMock(StatusLine.class);
@@ -105,7 +101,7 @@ public class HttpsUtilsTest {
         header.put("accept", "application/json");
 
         HttpEntity entity = new StringEntity("Test");
-        HttpResponse httpResponse = HttpsUtils.get(url, header);
+        HttpResponse httpResponse = HttpsUtils.get(url, header, httpClient);
         String res = HttpsUtils.extractResponseEntity(httpResponse);
 
         PowerMock.verifyAll();
@@ -115,28 +111,22 @@ public class HttpsUtilsTest {
 
     @Test
     public void testHttpsUtil_delete_excepiton() throws Exception {
+        PowerMock.resetAll();
         thrown.expect(CorrelationException.class);
         thrown.expectMessage("Failed to query data from server through DELETE method!");
         String url = "host";
         Map<String, String> header = new HashMap<>();
         header.put("accept", "application/json");
-        HttpResponse httpResponse = HttpsUtils.delete(url, header);
+        CloseableHttpClient httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT);
+        HttpResponse httpResponse = HttpsUtils.delete(url, header, httpClient);
         String response = HttpsUtils.extractResponseEntity(httpResponse);
         assertThat(response, equalTo(""));
     }
 
     @Test
     public void testHttpsUtil_delete_normal() throws Exception {
-        HttpClientBuilder hcb = PowerMock.createMock(HttpClientBuilder.class);
+        PowerMock.resetAll();
         CloseableHttpClient httpClient = PowerMock.createMock(CloseableHttpClient.class);
-        PowerMock.mockStatic(HttpClients.class);
-        EasyMock.expect(HttpClients.custom()).andReturn(hcb);
-        EasyMock.expect(hcb.setDefaultRequestConfig(EasyMock.anyObject(RequestConfig.class))).andReturn(hcb);
-        EasyMock.expect(hcb.setSSLSocketFactory(EasyMock.anyObject(SSLConnectionSocketFactory.class))).andReturn(hcb);
-        EasyMock.expect(hcb.setConnectionManager(EasyMock.anyObject(PoolingHttpClientConnectionManager.class))).andReturn(hcb);
-        EasyMock.expect(hcb.setConnectionManagerShared(true)).andReturn(hcb);
-        EasyMock.expect(hcb.build()).andReturn(httpClient);
-
         CloseableHttpResponse response = PowerMock.createMock(CloseableHttpResponse.class);
         EasyMock.expect(httpClient.execute(EasyMock.anyObject(HttpRequestBase.class))).andReturn(response);
         StatusLine sl = PowerMock.createMock(StatusLine.class);
@@ -156,7 +146,7 @@ public class HttpsUtilsTest {
         header.put("accept", "application/json");
 
         HttpEntity entity = new StringEntity("Test");
-        HttpResponse httpResponse = HttpsUtils.delete(url, header);
+        HttpResponse httpResponse = HttpsUtils.delete(url, header, httpClient);
         String res = HttpsUtils.extractResponseEntity(httpResponse);
 
         PowerMock.verifyAll();
@@ -166,6 +156,7 @@ public class HttpsUtilsTest {
 
     @Test
     public void testHttpsUtil_post_excepiton() throws Exception {
+        PowerMock.resetAll();
         thrown.expect(CorrelationException.class);
         thrown.expectMessage("Failed to query data from server through POST method!");
         String url = "host";
@@ -173,24 +164,16 @@ public class HttpsUtilsTest {
         header.put("accept", "application/json");
         Map<String, String> para = new HashMap<>();
         para.put("tset", "1111");
-
-        HttpResponse httpResponse = HttpsUtils.post(url, header, para, null);
+        CloseableHttpClient httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT);
+        HttpResponse httpResponse = HttpsUtils.post(url, header, para, null, httpClient);
         String response = HttpsUtils.extractResponseEntity(httpResponse);
         assertThat(response, equalTo(""));
     }
 
     @Test
     public void testHttpsUtil_post_normal() throws Exception {
-        HttpClientBuilder hcb = PowerMock.createMock(HttpClientBuilder.class);
+        PowerMock.resetAll();
         CloseableHttpClient httpClient = PowerMock.createMock(CloseableHttpClient.class);
-        PowerMock.mockStatic(HttpClients.class);
-        EasyMock.expect(HttpClients.custom()).andReturn(hcb);
-        EasyMock.expect(hcb.setDefaultRequestConfig(EasyMock.anyObject(RequestConfig.class))).andReturn(hcb);
-        EasyMock.expect(hcb.setSSLSocketFactory(EasyMock.anyObject(SSLConnectionSocketFactory.class))).andReturn(hcb);
-        EasyMock.expect(hcb.setConnectionManager(EasyMock.anyObject(PoolingHttpClientConnectionManager.class))).andReturn(hcb);
-        EasyMock.expect(hcb.setConnectionManagerShared(true)).andReturn(hcb);
-        EasyMock.expect(hcb.build()).andReturn(httpClient);
-
         CloseableHttpResponse response = PowerMock.createMock(CloseableHttpResponse.class);
         EasyMock.expect(httpClient.execute(EasyMock.anyObject(HttpRequestBase.class))).andReturn(response);
         StatusLine sl = PowerMock.createMock(StatusLine.class);
@@ -212,7 +195,7 @@ public class HttpsUtilsTest {
         para.put("tset", "1111");
 
         HttpEntity entity = new StringEntity("Test");
-        HttpResponse httpResponse = HttpsUtils.post(url, header, para, entity);
+        HttpResponse httpResponse = HttpsUtils.post(url, header, para, entity, httpClient);
         String res = HttpsUtils.extractResponseEntity(httpResponse);
 
         PowerMock.verifyAll();
@@ -229,24 +212,16 @@ public class HttpsUtilsTest {
         header.put("accept", "application/json");
         Map<String, String> para = new HashMap<>();
         para.put("tset", "1111");
-
-        HttpResponse httpResponse = HttpsUtils.put(url, header, para, null);
+        CloseableHttpClient httpClient = HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT);
+        HttpResponse httpResponse = HttpsUtils.put(url, header, para, null, httpClient);
         String response = HttpsUtils.extractResponseEntity(httpResponse);
         assertThat(response, equalTo(""));
     }
 
     @Test
     public void testHttpsUtil_put_normal() throws Exception {
-        HttpClientBuilder hcb = PowerMock.createMock(HttpClientBuilder.class);
+        PowerMock.resetAll();
         CloseableHttpClient httpClient = PowerMock.createMock(CloseableHttpClient.class);
-        PowerMock.mockStatic(HttpClients.class);
-        EasyMock.expect(HttpClients.custom()).andReturn(hcb);
-        EasyMock.expect(hcb.setDefaultRequestConfig(EasyMock.anyObject(RequestConfig.class))).andReturn(hcb);
-        EasyMock.expect(hcb.setSSLSocketFactory(EasyMock.anyObject(SSLConnectionSocketFactory.class))).andReturn(hcb);
-        EasyMock.expect(hcb.setConnectionManager(EasyMock.anyObject(PoolingHttpClientConnectionManager.class))).andReturn(hcb);
-        EasyMock.expect(hcb.setConnectionManagerShared(true)).andReturn(hcb);
-        EasyMock.expect(hcb.build()).andReturn(httpClient);
-
         CloseableHttpResponse response = PowerMock.createMock(CloseableHttpResponse.class);
         EasyMock.expect(httpClient.execute(EasyMock.anyObject(HttpRequestBase.class))).andReturn(response);
         StatusLine sl = PowerMock.createMock(StatusLine.class);
@@ -268,7 +243,7 @@ public class HttpsUtilsTest {
         para.put("tset", "1111");
 
         HttpEntity entity = new StringEntity("Test");
-        HttpResponse httpResponse = HttpsUtils.put(url, header, para, entity);
+        HttpResponse httpResponse = HttpsUtils.put(url, header, para, entity, httpClient);
         String res = HttpsUtils.extractResponseEntity(httpResponse);
 
         PowerMock.verifyAll();
@@ -295,4 +270,11 @@ public class HttpsUtilsTest {
         PowerMock.verifyAll();
     }
 
+    @Test
+    public void testHttpsUtil_getHttpClient_ok() throws Exception {
+        PowerMock.resetAll();
+        HttpsUtils.getHttpClient(HttpsUtils.DEFUALT_TIMEOUT);
+        PowerMock.verifyAll();
+    }
+
 }
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index f37388b..a958d71 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -51,7 +51,7 @@
             <dependency>\r
                 <groupId>org.onap.msb.java-sdk</groupId>\r
                 <artifactId>msb-java-sdk</artifactId>\r
-                <version>1.1.0-SNAPSHOT</version>\r
+                <version>1.1.1-SNAPSHOT</version>\r
             </dependency>\r
             <dependency>\r
                 <groupId>org.glassfish.jersey.core</groupId>\r