66dc9c28d6ac262e08cde3c50bada0e3a027cce2
[so.git] /
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP - SO
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END=========================================================
19  */
20
21 package org.openecomp.mso.apihandlerinfra;
22
23 import static org.junit.Assert.assertTrue;
24
25 import java.lang.reflect.Field;
26 import java.net.URI;
27 import java.sql.Timestamp;
28 import java.util.ArrayList;
29 import java.util.List;
30
31 import javax.ws.rs.core.Response;
32 import javax.ws.rs.core.UriInfo;
33
34 import mockit.Mock;
35 import mockit.MockUp;
36
37 import org.junit.Before;
38 import org.junit.Test;
39 import org.mockito.Mockito;
40 import org.openecomp.mso.apihandlerinfra.networkbeans.NetworkRequest;
41 import org.openecomp.mso.requestsdb.InfraActiveRequests;
42 import org.openecomp.mso.requestsdb.InfraRequests;
43 import org.openecomp.mso.requestsdb.RequestsDatabase;
44
45 public class NetworkRequestHandlerTest {
46
47     NetworkRequestHandler handler = null;
48
49     UriInfo uriInfo = null;
50
51     @Before
52     public void setup() throws Exception {
53
54         uriInfo = Mockito.mock(UriInfo.class);
55         Class<?> clazz = NetworkRequestHandler.class;
56         handler = (NetworkRequestHandler) clazz.newInstance();
57
58         Field f1 = handler.getClass().getDeclaredField("uriInfo");
59
60         f1.setAccessible(true);
61         f1.set(handler, uriInfo);
62     }
63
64     @Test
65     public void manageVnfRequestTest() {
66         Response resp = handler.manageNetworkRequest("<name>Test</name>", "v2");
67         assertTrue(null != resp);
68     }
69
70     @Test
71     public void manageVnfRequestTestV1() {
72         Response resp = handler.manageNetworkRequest("<name>Test</name>", "v1");
73         assertTrue(null != resp);
74     }
75
76     @Test
77     public void manageVnfRequestTestV3() {
78         Response resp = handler.manageNetworkRequest("<name>Test</name>", "v3");
79         assertTrue(null != resp);
80     }
81
82     @Test
83     public void manageVnfRequestTestInvalidVersion() {
84         Response resp = handler.manageNetworkRequest("<name>Test</name>", "v249");
85         assertTrue(null != resp);
86     }
87
88     @Test
89     public void manageVnfRequest2Test() {
90         Mockito.when(uriInfo.getRequestUri())
91                 .thenReturn(URI.create("http://localhost:8080/test"));
92
93         new MockUp<MsoPropertiesUtils>() {
94             @Mock
95             public synchronized final boolean getNoPropertiesState() {
96                 return false;
97             }
98         };
99         Response resp = handler.manageNetworkRequest("<name>Test</name>", "v2");
100         assertTrue(null != resp);
101     }
102
103     @Test
104     public void fillNetworkRequestTestV1() {
105         NetworkRequest qr = new NetworkRequest();
106         InfraRequests ar = new InfraRequests();
107         ar.setVnfId("1003");
108         ar.setVnfName("vnf");
109         ar.setVnfType("vnt");
110         ar.setTenantId("48889690");
111         ar.setProvStatus("uuu");
112         ar.setVolumeGroupName("volume");
113         ar.setVolumeGroupId("38838");
114         ar.setServiceType("vnf");
115         ar.setAicNodeClli("djerfe");
116         ar.setAaiServiceId("599499");
117         ar.setAicCloudRegion("south");
118         ar.setVfModuleName("m1");
119         ar.setVfModuleId("39949");
120         ar.setVfModuleModelName("test");
121         ar.setAaiServiceId("37728");
122         ar.setVnfParams("test");
123         handler.fillNetworkRequest(qr, ar, "v1");
124         String param = (String) qr.getNetworkParams();
125         assertTrue(param.equals("test"));
126     }
127
128     @Test
129     public void fillNetworkRequestTestV2() {
130         NetworkRequest qr = new NetworkRequest();
131         InfraRequests ar = new InfraRequests();
132         ar.setVnfId("1003");
133         ar.setVnfName("vnf");
134         ar.setVnfType("vnt");
135         ar.setTenantId("48889690");
136         ar.setProvStatus("uuu");
137         ar.setVolumeGroupName("volume");
138         ar.setVolumeGroupId("38838");
139         ar.setServiceType("vnf");
140         ar.setAicNodeClli("djerfe");
141         ar.setAaiServiceId("599499");
142         ar.setAicCloudRegion("south");
143         ar.setVfModuleName("m1");
144         ar.setVfModuleId("39949");
145         ar.setVfModuleModelName("test");
146         ar.setAaiServiceId("37728");
147         ar.setVnfParams("test");
148         handler.fillNetworkRequest(qr, ar, "v2");
149         String param = (String) qr.getNetworkParams();
150         assertTrue(param.equals("test"));
151     }
152
153     @Test
154     public void fillNetworkRequestTestV3() {
155         NetworkRequest qr = new NetworkRequest();
156         InfraRequests ar = new InfraRequests();
157         ar.setVnfId("1003");
158         ar.setVnfName("vnf");
159         ar.setVnfType("vnt");
160         ar.setTenantId("48889690");
161         ar.setProvStatus("uuu");
162         ar.setVolumeGroupName("volume");
163         ar.setVolumeGroupId("38838");
164         ar.setServiceType("vnf");
165         ar.setAicNodeClli("djerfe");
166         ar.setAaiServiceId("599499");
167         ar.setAicCloudRegion("south");
168         ar.setVfModuleName("m1");
169         ar.setVfModuleId("39949");
170         ar.setVfModuleModelName("test");
171         ar.setAaiServiceId("37728");
172         ar.setVnfParams("test");
173         handler.fillNetworkRequest(qr, ar, "v3");
174         String param = (String) qr.getNetworkParams();
175         assertTrue(param.equals("test"));
176     }
177
178     @Test
179     public void queryFiltersTest() {
180         new MockUp<RequestsDatabase>() {
181             @Mock
182             public List<InfraActiveRequests> getRequestListFromInfraActive(String queryAttributeName,
183                                                                            String queryValue,
184                                                                            String requestType) {
185                 List<InfraActiveRequests> list = new ArrayList<>();
186                 InfraActiveRequests req = new InfraActiveRequests();
187                 req.setAaiServiceId("299392");
188                 req.setAction("CREATE");
189                 req.setRequestStatus("COMPLETE");
190                 req.setProgress(10001L);
191                 req.setSource("test");
192                 req.setStartTime(new Timestamp(10020100));
193                 req.setEndTime(new Timestamp(20020100));
194                 req.setStatusMessage("message");
195                 list.add(req);
196                 return list;
197             }
198         };
199         Response resp = handler.queryFilters("networkType", "serviceType", "aicNodeClli", "tenantId", "v1");
200         assertTrue(resp.getEntity().toString() != null);
201     }
202
203     @Test
204     public void getRequestTest() {
205         new MockUp<RequestsDatabase>() {
206             @Mock
207             public InfraActiveRequests getRequestFromInfraActive(String requestId, String requestType) {
208                 InfraActiveRequests req = new InfraActiveRequests();
209                 req.setAaiServiceId("299392");
210                 req.setAction("CREATE");
211                 req.setRequestStatus("COMPLETE");
212                 req.setProgress(10001L);
213                 req.setSource("test");
214                 req.setStartTime(new Timestamp(10020100));
215                 req.setEndTime(new Timestamp(20020100));
216                 req.setStatusMessage("message");
217                 return req;
218             }
219         };
220         Response resp = handler.getRequest("388293", "v1");
221         assertTrue(resp.getEntity().toString() != null);
222     }
223
224 }