/*- * ============LICENSE_START======================================================= * ONAP - SO * ================================================================================ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. * ================================================================================ * 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. * ============LICENSE_END========================================================= */ package org.openecomp.mso.apihandlerinfra; import static org.junit.Assert.assertTrue; import java.lang.reflect.Field; import java.net.URI; import java.sql.Timestamp; import java.util.ArrayList; import java.util.List; import javax.ws.rs.core.Response; import javax.ws.rs.core.UriInfo; import mockit.Mock; import mockit.MockUp; import org.junit.Before; import org.junit.Test; import org.mockito.Mockito; import org.openecomp.mso.apihandlerinfra.networkbeans.NetworkRequest; import org.openecomp.mso.requestsdb.InfraActiveRequests; import org.openecomp.mso.requestsdb.InfraRequests; import org.openecomp.mso.requestsdb.RequestsDatabase; public class NetworkRequestHandlerTest { NetworkRequestHandler handler = null; UriInfo uriInfo = null; @Before public void setup() throws Exception{ uriInfo = Mockito.mock(UriInfo.class); Class clazz = NetworkRequestHandler.class; handler = (NetworkRequestHandler)clazz.newInstance(); Field f1 = handler.getClass().getDeclaredField("uriInfo"); f1.setAccessible(true); f1.set(handler, uriInfo); } @Test public void manageVnfRequestTest(){ Mockito.when(uriInfo.getRequestUri()).thenReturn(URI.create("http://localhost:8080/test")); Response resp = handler.manageNetworkRequest("Test", "v2"); assertTrue(null != resp); } @Test public void manageVnfRequestTestV1(){ Mockito.when(uriInfo.getRequestUri()).thenReturn(URI.create("http://localhost:8080/test")); Response resp = handler.manageNetworkRequest("Test", "v1"); assertTrue(null != resp); } @Test public void manageVnfRequestTestV3(){ Mockito.when(uriInfo.getRequestUri()).thenReturn(URI.create("http://localhost:8080/test")); Response resp = handler.manageNetworkRequest("Test", "v3"); assertTrue(null != resp); } @Test public void manageVnfRequestTestInvalidVersion(){ Response resp = handler.manageNetworkRequest("Test", "v249"); assertTrue(null != resp); } @Test public void manageVnfRequest2Test(){ Mockito.when(uriInfo.getRequestUri()) .thenReturn(URI.create("http://localhost:8080/test")); new MockUp() { @Mock public synchronized final boolean getNoPropertiesState() { return false; } }; Response resp = handler.manageNetworkRequest("Test", "v2"); assertTrue(null != resp); } @Test public void fillNetworkRequestTestV1(){ NetworkRequest qr = new NetworkRequest(); InfraRequests ar = new InfraRequests(); ar.setVnfId("1003"); ar.setVnfName("vnf"); ar.setVnfType("vnt"); ar.setTenantId("48889690"); ar.setProvStatus("uuu"); ar.setVolumeGroupName("volume"); ar.setVolumeGroupId("38838"); ar.setServiceType("vnf"); ar.setAicNodeClli("djerfe"); ar.setAaiServiceId("599499"); ar.setAicCloudRegion("south"); ar.setVfModuleName("m1"); ar.setVfModuleId("39949"); ar.setVfModuleModelName("test"); ar.setAaiServiceId("37728"); ar.setVnfParams("test"); handler.fillNetworkRequest(qr, ar, "v1"); String param = (String)qr.getNetworkParams(); assertTrue(param.equals("test")); } @Test public void fillNetworkRequestTestV2(){ NetworkRequest qr = new NetworkRequest(); InfraRequests ar = new InfraRequests(); ar.setVnfId("1003"); ar.setVnfName("vnf"); ar.setVnfType("vnt"); ar.setTenantId("48889690"); ar.setProvStatus("uuu"); ar.setVolumeGroupName("volume"); ar.setVolumeGroupId("38838"); ar.setServiceType("vnf"); ar.setAicNodeClli("djerfe"); ar.setAaiServiceId("599499"); ar.setAicCloudRegion("south"); ar.setVfModuleName("m1"); ar.setVfModuleId("39949"); ar.setVfModuleModelName("test"); ar.setAaiServiceId("37728"); ar.setVnfParams("test"); handler.fillNetworkRequest(qr, ar, "v2"); String param = (String)qr.getNetworkParams(); assertTrue(param.equals("test")); } @Test public void fillNetworkRequestTestV3(){ NetworkRequest qr = new NetworkRequest(); InfraRequests ar = new InfraRequests(); ar.setVnfId("1003"); ar.setVnfName("vnf"); ar.setVnfType("vnt"); ar.setTenantId("48889690"); ar.setProvStatus("uuu"); ar.setVolumeGroupName("volume"); ar.setVolumeGroupId("38838"); ar.setServiceType("vnf"); ar.setAicNodeClli("djerfe"); ar.setAaiServiceId("599499"); ar.setAicCloudRegion("south"); ar.setVfModuleName("m1"); ar.setVfModuleId("39949"); ar.setVfModuleModelName("test"); ar.setAaiServiceId("37728"); ar.setVnfParams("test"); handler.fillNetworkRequest(qr, ar, "v3"); String param = (String)qr.getNetworkParams(); assertTrue(param.equals("test")); } @Test public void queryFiltersTest(){ new MockUp() { @Mock public List getRequestListFromInfraActive (String queryAttributeName, String queryValue, String requestType) { List list = new ArrayList<>(); InfraActiveRequests req = new InfraActiveRequests(); req.setAaiServiceId("299392"); req.setAction("CREATE"); req.setRequestStatus("COMPLETE"); req.setProgress(10001L); req.setSource("test"); req.setStartTime(new Timestamp(10020100)); req.setEndTime(new Timestamp(20020100)); req.setStatusMessage("message"); list.add(req); return list; } }; Response resp = handler.queryFilters("networkType", "serviceType", "aicNodeClli", "tenantId", "v1"); assertTrue(resp.getEntity().toString() != null); } @Test public void getRequestTest(){ new MockUp() { @Mock public InfraActiveRequests getRequestFromInfraActive (String requestId, String requestType) { InfraActiveRequests req = new InfraActiveRequests(); req.setAaiServiceId("299392"); req.setAction("CREATE"); req.setRequestStatus("COMPLETE"); req.setProgress(10001L); req.setSource("test"); req.setStartTime(new Timestamp(10020100)); req.setEndTime(new Timestamp(20020100)); req.setStatusMessage("message"); return req; } }; Response resp = handler.getRequest("388293", "v1"); assertTrue(resp.getEntity().toString() != null); } }