diff options
Diffstat (limited to 'wfenginemgrservice/src/test/java/org/onap/workflow/common/RestClientTest.java')
-rw-r--r-- | wfenginemgrservice/src/test/java/org/onap/workflow/common/RestClientTest.java | 294 |
1 files changed, 194 insertions, 100 deletions
diff --git a/wfenginemgrservice/src/test/java/org/onap/workflow/common/RestClientTest.java b/wfenginemgrservice/src/test/java/org/onap/workflow/common/RestClientTest.java index 418cff6..691577a 100644 --- a/wfenginemgrservice/src/test/java/org/onap/workflow/common/RestClientTest.java +++ b/wfenginemgrservice/src/test/java/org/onap/workflow/common/RestClientTest.java @@ -1,100 +1,194 @@ -/** - * Copyright 2017 ZTE Corporation. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.onap.workflow.common; - -import static org.powermock.api.mockito.PowerMockito.mock; - -import org.apache.http.HttpEntity; -import org.apache.http.HttpHost; -import org.apache.http.HttpRequest; -import org.apache.http.client.methods.CloseableHttpResponse; -import org.apache.http.impl.client.CloseableHttpClient; -import org.apache.http.impl.client.HttpClients; -import org.junit.After; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.mockito.Mockito; -import org.onap.workflow.common.RestClient.HttpMethod; -import org.onap.workflow.externalservice.entity.activitientitiy.ActivitiStartProcessRequest; -import org.powermock.api.mockito.PowerMockito; -import org.powermock.core.classloader.annotations.PowerMockIgnore; -import org.powermock.core.classloader.annotations.PrepareForTest; -import org.powermock.modules.junit4.PowerMockRunner; - - -@PrepareForTest({RestClient.class, HttpClients.class}) -@RunWith(PowerMockRunner.class) -@PowerMockIgnore("javax.net.ssl.*") -public class RestClientTest { - private RestClient restClient; - @Before - public void setUp() throws Exception { - restClient = new RestClient(); - } - - @After - public void tearDown() throws Exception {} - - @SuppressWarnings("static-access") - @Test - public final void testExecuteHttp() throws Exception { - HttpEntity httpEntity = mock(HttpEntity.class); - PowerMockito.mockStatic(HttpClients.class); - CloseableHttpClient tt = mock(CloseableHttpClient.class); - CloseableHttpResponse reponse = mock(CloseableHttpResponse.class); - - PowerMockito.when(HttpClients.createDefault()).thenReturn(tt); - PowerMockito.when(tt.execute(Mockito.any(HttpHost.class), Mockito.any(HttpRequest.class))) - .thenReturn(reponse); - PowerMockito.when(reponse.getEntity()).thenReturn(httpEntity); - - restClient.executeHttp(HttpMethod.POST, "127.0.0.1", 80, "test", httpEntity); - } - - @SuppressWarnings("static-access") - @Test - public final void testExecuteHttpDeleteDeploy() throws Exception { - HttpEntity httpEntity = mock(HttpEntity.class); - PowerMockito.mockStatic(HttpClients.class); - CloseableHttpClient tt = mock(CloseableHttpClient.class); - CloseableHttpResponse reponse = mock(CloseableHttpResponse.class); - PowerMockito.when(HttpClients.createDefault()).thenReturn(tt); - PowerMockito.when(tt.execute(Mockito.any(HttpHost.class), Mockito.any(HttpRequest.class))) - .thenReturn(reponse); - PowerMockito.when(reponse.getEntity()).thenReturn(httpEntity); - restClient.executeHttpDeleteDeploy(HttpMethod.DELETE, "127.0.0.1", 80, "test"); - } - - @SuppressWarnings("static-access") - @Test - public final void testExecuteHttpStartIntance() throws Exception { - - ActivitiStartProcessRequest activitiStartProcessRequest = - mock(ActivitiStartProcessRequest.class); - - HttpEntity httpEntity = mock(HttpEntity.class); - PowerMockito.mockStatic(HttpClients.class); - CloseableHttpClient tt = mock(CloseableHttpClient.class); - CloseableHttpResponse reponse = mock(CloseableHttpResponse.class); - PowerMockito.when(HttpClients.createDefault()).thenReturn(tt); - PowerMockito.when(tt.execute(Mockito.any(HttpHost.class), Mockito.any(HttpRequest.class))) - .thenReturn(reponse); - PowerMockito.when(reponse.getEntity()).thenReturn(httpEntity); - restClient.executeHttpStartIntance(HttpMethod.POST, "127.0.0.1", 80, "test",activitiStartProcessRequest); - - } -} +/**
+ * Copyright 2017 ZTE Corporation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.onap.workflow.common;
+
+import static org.powermock.api.mockito.PowerMockito.mock;
+
+import java.io.IOException;
+
+import org.apache.http.HttpEntity;
+import org.apache.http.HttpHost;
+import org.apache.http.HttpRequest;
+import org.apache.http.StatusLine;
+import org.apache.http.client.ClientProtocolException;
+import org.apache.http.client.methods.CloseableHttpResponse;
+import org.apache.http.conn.ClientConnectionManager;
+import org.apache.http.impl.client.CloseableHttpClient;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.params.HttpParams;
+import org.apache.http.protocol.HttpContext;
+import org.junit.Assert;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mockito;
+import org.onap.workflow.WorkflowAppConfig;
+import org.onap.workflow.common.RestClient.HttpMethod;
+import org.onap.workflow.entity.MsbClientConfig;
+import org.onap.workflow.externalservice.entity.activitientitiy.ActivitiStartProcessRequest;
+import org.powermock.api.mockito.PowerMockito;
+import org.powermock.core.classloader.annotations.PrepareForTest;
+import org.powermock.modules.junit4.PowerMockRunner;
+
+
+@PrepareForTest({HttpClients.class})
+@RunWith(PowerMockRunner.class)
+public class RestClientTest {
+ @Test
+ public void testExecuteHttp() throws Exception {
+ HttpEntity httpEntity = mock(HttpEntity.class);
+ PowerMockito.mockStatic(HttpClients.class);
+ CloseableHttpClient httpclient = mock(CloseableHttpClient.class);
+ PowerMockito.when(HttpClients.createDefault()).thenReturn(httpclient);
+ PowerMockito.when(httpclient.execute(Mockito.any(HttpHost.class), Mockito.any(HttpRequest.class)))
+ .thenThrow(new IOException());
+ try{
+ RestClient.executeHttp(HttpMethod.POST, "127.0.0.1", 80, "test", httpEntity);
+ }catch(IOException e){
+ Assert.assertTrue(true);
+ }
+ }
+
+ @Test
+ public void testExecuteHttpException() throws Exception {
+ HttpEntity httpEntity = mock(HttpEntity.class);
+ PowerMockito.mockStatic(HttpClients.class);
+ CloseableHttpClient tt = mock(CloseableHttpClient.class);
+ CloseableHttpResponse reponse = mock(CloseableHttpResponse.class);
+ StatusLine sl = mock(StatusLine.class);
+ PowerMockito.when(HttpClients.createDefault()).thenReturn(tt);
+ PowerMockito.when(tt.execute(Mockito.any(HttpHost.class), Mockito.any(HttpRequest.class)))
+ .thenReturn(reponse);
+ PowerMockito.when(reponse.getEntity()).thenReturn(httpEntity);
+ PowerMockito.when(reponse.getStatusLine()).thenReturn(sl);
+ RestClient.executeHttp(HttpMethod.POST, "127.0.0.1", 80, "test", httpEntity);
+
+ WorkflowAppConfig workflowconfig = makeWorkFlowConfig("127.0.0.1", 80);
+ Config.setWorkflowAppConfig(workflowconfig);
+ RestClient.executeHttp(HttpMethod.POST, null, null, "test", httpEntity);
+ }
+
+ private WorkflowAppConfig makeWorkFlowConfig(String msbSvrIp, int msbSvrPort) {
+ MsbClientConfig msbClientConfig = new MsbClientConfig();
+ msbClientConfig.setMsbSvrIp(msbSvrIp);
+ msbClientConfig.setMsbSvrPort(msbSvrPort);
+ WorkflowAppConfig workflowconfig = new WorkflowAppConfig();
+ workflowconfig.setMsbClientConfig(msbClientConfig);
+ return workflowconfig;
+ }
+
+ @Test
+ public void testExecuteHttpDeleteDeploy() throws Exception {
+ HttpEntity httpEntity = mock(HttpEntity.class);
+ PowerMockito.mockStatic(HttpClients.class);
+ CloseableHttpClient tt = mock(CloseableHttpClient.class);
+ CloseableHttpResponse reponse = mock(CloseableHttpResponse.class);
+ PowerMockito.when(HttpClients.createDefault()).thenReturn(tt);
+ PowerMockito.when(tt.execute(Mockito.any(HttpHost.class), Mockito.any(HttpRequest.class)))
+ .thenReturn(reponse);
+ PowerMockito.when(reponse.getEntity()).thenReturn(httpEntity);
+ RestClient.executeHttpDeleteDeploy(HttpMethod.DELETE, "127.0.0.1", 80, "test");
+
+ WorkflowAppConfig workflowconfig = makeWorkFlowConfig("127.0.0.1", 80);
+ Config.setWorkflowAppConfig(workflowconfig);
+ RestClient.executeHttpDeleteDeploy(HttpMethod.DELETE, null, null, "test");
+ }
+
+ @Test
+ public void testExecuteHttpStartIntance() throws Exception {
+ ActivitiStartProcessRequest activitiStartProcessRequest =
+ mock(ActivitiStartProcessRequest.class);
+
+ HttpEntity httpEntity = mock(HttpEntity.class);
+ PowerMockito.mockStatic(HttpClients.class);
+ CloseableHttpClient tt = mock(CloseableHttpClient.class);
+ CloseableHttpResponse reponse = mock(CloseableHttpResponse.class);
+ PowerMockito.when(HttpClients.createDefault()).thenReturn(tt);
+ PowerMockito.when(tt.execute(Mockito.any(HttpHost.class), Mockito.any(HttpRequest.class)))
+ .thenReturn(reponse);
+ PowerMockito.when(reponse.getEntity()).thenReturn(httpEntity);
+ RestClient.executeHttpStartIntance(HttpMethod.POST, "127.0.0.1", 80, "test",activitiStartProcessRequest);
+
+ WorkflowAppConfig workflowconfig = makeWorkFlowConfig("127.0.0.1", 80);
+ Config.setWorkflowAppConfig(workflowconfig);
+ RestClient.executeHttpStartIntance(HttpMethod.POST, null, null, "test", activitiStartProcessRequest);
+ }
+
+ @Test
+ public void testgetRequest() {
+ HttpRequest request = RestClient.getRequest(HttpMethod.GET, "/test/", null);
+ Assert.assertTrue (request.getRequestLine().getMethod().equals(HttpMethod.GET.toString()));
+ request = RestClient.getRequest(HttpMethod.POST, "/test/", null);
+ Assert.assertTrue (request.getRequestLine().getMethod().equals(HttpMethod.POST.toString()));
+ request = RestClient.getRequest(HttpMethod.DELETE, "/test/", null);
+ Assert.assertTrue (request.getRequestLine().getMethod().equals(HttpMethod.DELETE.toString()));
+ request = RestClient.getRequest(HttpMethod.PUT, "/test/", null);
+ Assert.assertTrue (request.getRequestLine().getMethod().equals(HttpMethod.PUT.toString()));
+ try {
+ request = RestClient.getRequest(null, "/test/", null);
+ } catch (NullPointerException e) {
+ Assert.assertTrue (true);
+ }
+ }
+
+ @Test
+ public void testPost() throws Exception {
+ HttpEntity httpEntity = mock(HttpEntity.class);
+ PowerMockito.mockStatic(HttpClients.class);
+ CloseableHttpClient tt = mock(CloseableHttpClient.class);
+ CloseableHttpResponse reponse = mock(CloseableHttpResponse.class);
+
+ PowerMockito.when(HttpClients.createDefault()).thenReturn(tt);
+ PowerMockito.when(tt.execute(Mockito.any(HttpHost.class), Mockito.any(HttpRequest.class)))
+ .thenReturn(reponse);
+ PowerMockito.when(reponse.getEntity()).thenReturn(httpEntity);
+ WorkflowAppConfig workflowconfig = makeWorkFlowConfig("127.0.0.1", 80);
+ Config.setWorkflowAppConfig(workflowconfig);
+ RestClient.post("127.0.0.1", 80, "test", null);
+ RestClient.post("127.0.0.1", 80, "test");
+ }
+
+ @Test
+ public void testCloseHttpClient(){
+ Assert.assertTrue(RestClient.closeHttpClient(mock(CloseableHttpClient.class)));
+ Assert.assertTrue(RestClient.closeHttpClient(null));
+ Assert.assertFalse(RestClient.closeHttpClient(new CloseableHttpClientTest()));
+ }
+
+ public class CloseableHttpClientTest extends CloseableHttpClient{
+ @Override
+ public void close() throws IOException {
+ throw new IOException();
+ }
+
+ @Override
+ protected CloseableHttpResponse doExecute(HttpHost target, HttpRequest request,
+ HttpContext context) throws IOException, ClientProtocolException {
+ return null;
+ }
+
+ @SuppressWarnings("deprecation")
+ @Override
+ public HttpParams getParams() {
+ return null;
+ }
+
+ @SuppressWarnings("deprecation")
+ @Override
+ public ClientConnectionManager getConnectionManager() {
+ return null;
+ }
+ }
+}
|