Adding UT for MSO Vnf Adapter
[so.git] / adapters / mso-vnf-adapter / src / test / java / org / openecomp / mso / adapters / vnf / test / MsoVnfAdapterImplTest.java
1 /*-\r
2  * ============LICENSE_START=======================================================\r
3  * ONAP - SO\r
4  * ================================================================================\r
5  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
6  * ================================================================================\r
7  * Licensed under the Apache License, Version 2.0 (the "License");\r
8  * you may not use this file except in compliance with the License.\r
9  * You may obtain a copy of the License at\r
10  * \r
11  *      http://www.apache.org/licenses/LICENSE-2.0\r
12  * \r
13  * Unless required by applicable law or agreed to in writing, software\r
14  * distributed under the License is distributed on an "AS IS" BASIS,\r
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16  * See the License for the specific language governing permissions and\r
17  * limitations under the License.\r
18  * ============LICENSE_END=========================================================\r
19  */\r
20 \r
21 package org.openecomp.mso.adapters.vnf.test;\r
22 \r
23 import java.util.HashMap;\r
24 import java.util.Map;\r
25 \r
26 import javax.xml.ws.Holder;\r
27 \r
28 import org.junit.Test;\r
29 import org.openecomp.mso.adapters.vnf.MsoVnfAdapterImpl;\r
30 import org.openecomp.mso.db.catalog.CatalogDatabase;\r
31 import org.openecomp.mso.db.catalog.beans.VfModule;\r
32 import org.openecomp.mso.db.catalog.beans.VfModuleCustomization;\r
33 import org.openecomp.mso.db.catalog.beans.VnfResource;\r
34 import org.openecomp.mso.entity.MsoRequest;\r
35 import org.openecomp.mso.openstack.beans.HeatStatus;\r
36 import org.openecomp.mso.openstack.beans.StackInfo;\r
37 import org.openecomp.mso.openstack.beans.VnfRollback;\r
38 import org.openecomp.mso.openstack.exceptions.MsoException;\r
39 import org.openecomp.mso.openstack.utils.MsoHeatUtils;\r
40 \r
41 import mockit.Mock;\r
42 import mockit.MockUp;\r
43 \r
44 public class MsoVnfAdapterImplTest {\r
45 \r
46         @Test\r
47         public void healthCheckVNFTest() {\r
48                 MsoVnfAdapterImpl instance = new MsoVnfAdapterImpl();\r
49                 instance.healthCheck();\r
50         }\r
51 \r
52         @Test\r
53         public void createVnfTest() {\r
54 \r
55                 new MockUp<MsoHeatUtils>() {\r
56                         @Mock\r
57                         public StackInfo queryStack(String cloudSiteId, String tenantId, String stackName) throws MsoException {\r
58                                 StackInfo info = new StackInfo();\r
59                                 info.setStatus(HeatStatus.CREATED);\r
60                                 return info;\r
61                         }\r
62                 };\r
63 \r
64                 MsoVnfAdapterImpl instance = new MsoVnfAdapterImpl();\r
65                 MsoRequest msoRequest = new MsoRequest();\r
66                 msoRequest.setRequestId("12345");\r
67                 msoRequest.setServiceInstanceId("12345");\r
68 \r
69                 Map<String, String> map = new HashMap<>();\r
70                 map.put("key1", "value1");\r
71                 try {\r
72                         instance.createVfModule("mdt1", "88a6ca3ee0394ade9403f075db23167e", "vnf", "1", "vSAMP12", "VFMOD",\r
73                                         "volumeGroupHeatStackId|1", "baseVfHeatStackId", "88a6ca3ee0394ade9403f075db23167e", map,\r
74                                         Boolean.FALSE, Boolean.TRUE, msoRequest, new Holder<>(), new Holder<Map<String, String>>(),\r
75                                         new Holder<VnfRollback>());\r
76                 } catch (Exception e) {\r
77 \r
78                 }\r
79         }\r
80 \r
81         @Test\r
82         public void updateVnfTest() {\r
83 \r
84                 new MockUp<MsoHeatUtils>() {\r
85                         @Mock\r
86                         public StackInfo queryStack(String cloudSiteId, String tenantId, String stackName) throws MsoException {\r
87                                 StackInfo info = new StackInfo();\r
88                                 info.setStatus(HeatStatus.CREATED);\r
89                                 return info;\r
90                         }\r
91                 };\r
92 \r
93                 new MockUp<CatalogDatabase>() {\r
94                         @Mock\r
95                         public VfModuleCustomization getVfModuleCustomizationByModelCustomizationId(String modelCustomizationUuid) {\r
96                                 VfModuleCustomization vfcModule = new VfModuleCustomization();\r
97                                 VfModule vfm = new VfModule();\r
98                                 vfm.setVnfResourceModelUUId("88a6ca3ee0394ade9403f075db23167e");\r
99                                 vfcModule.setVfModule(vfm);\r
100                                 return vfcModule;\r
101                         }\r
102                 };\r
103 \r
104                 new MockUp<CatalogDatabase>() {\r
105                         @Mock\r
106                         public VnfResource getVnfResourceByModelUuid(String modelUuid) {\r
107                                 VnfResource vnfResource = new VnfResource();\r
108                                 vnfResource.setAicVersionMin("1");\r
109                                 vnfResource.setAicVersionMax("2");\r
110                                 return vnfResource;\r
111                         }\r
112                 };\r
113 \r
114                 MsoVnfAdapterImpl instance = new MsoVnfAdapterImpl();\r
115                 MsoRequest msoRequest = new MsoRequest();\r
116                 msoRequest.setRequestId("12345");\r
117                 msoRequest.setServiceInstanceId("12345");\r
118 \r
119                 Map<String, String> map = new HashMap<>();\r
120                 map.put("key1", "value1");\r
121                 try {\r
122                         instance.updateVfModule("mdt1", "88a6ca3ee0394ade9403f075db23167e", "vnf", "1", "vSAMP12", "VFMOD",\r
123                                         "volumeGroupHeatStackId|1", "baseVfHeatStackId", "vfModuleStackId",\r
124                                         "88a6ca3ee0394ade9403f075db23167e", map, msoRequest, new Holder<Map<String, String>>(),\r
125                                         new Holder<VnfRollback>());\r
126                 } catch (Exception e) {\r
127 \r
128                 }\r
129         }\r
130 \r
131         @Test\r
132         public void deleteVnfTest() {\r
133                 new MockUp<MsoHeatUtils>() {\r
134                         @Mock\r
135                         public Map<String, Object> queryStackForOutputs(String cloudSiteId, String tenantId, String stackName)\r
136                                         throws MsoException {\r
137                                 \r
138                                 Map<String, Object> outputs = new HashMap<>();\r
139                                 outputs.put("Key1", "value1");\r
140                                 return outputs;\r
141                         }\r
142                 };\r
143 \r
144                 MsoVnfAdapterImpl instance = new MsoVnfAdapterImpl();\r
145                 MsoRequest msoRequest = new MsoRequest();\r
146                 msoRequest.setRequestId("12345");\r
147                 msoRequest.setServiceInstanceId("12345");\r
148                 try {\r
149                         instance.deleteVfModule("mdt1", "88a6ca3ee0394ade9403f075db23167e", "vSAMP12", msoRequest,\r
150                                         new Holder<Map<String, String>>());\r
151                 } catch (Exception e) {\r
152 \r
153                 }\r
154         }\r
155 \r
156 }\r