Adding UT for MSO Vnf Adapter 57/17057/1
authorSeshu-Kumar-M <seshu.kumar.m@huawei.com>
Tue, 3 Oct 2017 13:46:28 +0000 (19:16 +0530)
committerSeshu-Kumar-M <seshu.kumar.m@huawei.com>
Tue, 3 Oct 2017 13:46:28 +0000 (19:16 +0530)
IssueId: SO-176

Change-Id: I66f7a522bdd85c65abba57e2802bb5085b4535a7
Signed-off-by: Seshu-Kumar-M <seshu.kumar.m@huawei.com>
adapters/mso-vnf-adapter/pom.xml
adapters/mso-vnf-adapter/src/test/java/org/openecomp/mso/adapters/vnf/test/MsoVnfAdapterAsyncImplTest.java [new file with mode: 0644]
adapters/mso-vnf-adapter/src/test/java/org/openecomp/mso/adapters/vnf/test/MsoVnfAdapterImplTest.java [new file with mode: 0644]

index ba0c87a..9c5d74c 100644 (file)
@@ -30,7 +30,7 @@
                                <version>2.3</version>\r
                                <executions>\r
                                        <execution>\r
-                                           <id>Synch</id>\r
+                                               <id>Synch</id>\r
                                                <goals>\r
                                                        <goal>wsgen</goal>\r
                                                </goals>\r
@@ -42,7 +42,7 @@
                                                </configuration>\r
                                        </execution>\r
                                        <execution>\r
-                                               <id>Asynch</id>\r
+                                               <id>Asynch</id>\r
                                                <goals>\r
                                                        <goal>wsgen</goal>\r
                                                </goals>\r
@@ -70,7 +70,7 @@
                </plugins>\r
                <pluginManagement>\r
                        <plugins>\r
-                               <!--This plugin's configuration is used to store Eclipse m2e settings\r
+                               <!--This plugin's configuration is used to store Eclipse m2e settings \r
                                        only. It has no influence on the Maven build itself. -->\r
                                <plugin>\r
                                        <groupId>org.eclipse.m2e</groupId>\r
                        <artifactId>status-control</artifactId>\r
                        <version>${project.version}</version>\r
                </dependency>\r
-\r
+               <dependency>\r
+                       <groupId>org.jmockit</groupId>\r
+                       <artifactId>jmockit</artifactId>\r
+                       <version>1.8</version>\r
+                       <scope>test</scope>\r
+               </dependency>\r
+               <dependency>\r
+                       <groupId>junit</groupId>\r
+                       <artifactId>junit</artifactId>\r
+                       <version>4.12</version>\r
+                       <scope>test</scope>\r
+               </dependency>\r
                <!-- <dependency> -->\r
                <!-- <groupId>org.openecomp.so</groupId> -->\r
                <!-- <artifactId>mso-catalog-db</artifactId> -->\r
diff --git a/adapters/mso-vnf-adapter/src/test/java/org/openecomp/mso/adapters/vnf/test/MsoVnfAdapterAsyncImplTest.java b/adapters/mso-vnf-adapter/src/test/java/org/openecomp/mso/adapters/vnf/test/MsoVnfAdapterAsyncImplTest.java
new file mode 100644 (file)
index 0000000..b680170
--- /dev/null
@@ -0,0 +1,131 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * ONAP - SO\r
+ * ================================================================================\r
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.openecomp.mso.adapters.vnf.test;\r
+\r
+import java.util.HashMap;\r
+import java.util.Map;\r
+\r
+import org.junit.Test;\r
+import org.openecomp.mso.adapters.vnf.MsoVnfAdapterAsyncImpl;\r
+import org.openecomp.mso.entity.MsoRequest;\r
+import org.openecomp.mso.openstack.beans.HeatStatus;\r
+import org.openecomp.mso.openstack.beans.StackInfo;\r
+import org.openecomp.mso.openstack.beans.VnfRollback;\r
+import org.openecomp.mso.openstack.exceptions.MsoException;\r
+import org.openecomp.mso.openstack.utils.MsoHeatUtils;\r
+\r
+import mockit.Mock;\r
+import mockit.MockUp;\r
+\r
+public class MsoVnfAdapterAsyncImplTest {\r
+\r
+       @Test\r
+       public void healthCheckVNFTest() {\r
+               MsoVnfAdapterAsyncImpl instance = new MsoVnfAdapterAsyncImpl();\r
+               instance.healthCheckA();\r
+       }\r
+\r
+       @Test\r
+       public void createVNFTest() {\r
+               new MockUp<MsoHeatUtils>() {\r
+                       @Mock\r
+                       public StackInfo queryStack(String cloudSiteId, String tenantId, String stackName) throws MsoException {\r
+                               StackInfo info = new StackInfo();\r
+                               info.setStatus(HeatStatus.CREATED);\r
+                               return info;\r
+                       }\r
+               };\r
+\r
+               MsoVnfAdapterAsyncImpl instance = new MsoVnfAdapterAsyncImpl();\r
+               MsoRequest msoRequest = new MsoRequest();\r
+               msoRequest.setRequestId("12345");\r
+               msoRequest.setServiceInstanceId("12345");\r
+               try {\r
+\r
+                       instance.createVnfA("mdt1", "88a6ca3ee0394ade9403f075db23167e", "vnf", "1", "vSAMP12", "VFMOD",\r
+                                       "volumeGroupHeatStackId|1", new HashMap<String, String>(), Boolean.FALSE, Boolean.TRUE, "messageId",\r
+                                       null, "http://org.openecomp.mso/notify/adapterNotify/updateVnfNotificationRequest");\r
+               } catch (Exception e) {\r
+\r
+               }\r
+       }\r
+\r
+       @Test\r
+       public void updateVnfTest() {\r
+               MsoVnfAdapterAsyncImpl instance = new MsoVnfAdapterAsyncImpl();\r
+               MsoRequest msoRequest = new MsoRequest();\r
+               msoRequest.setRequestId("12345");\r
+               msoRequest.setServiceInstanceId("12345");\r
+\r
+               Map<String, String> map = new HashMap<>();\r
+               map.put("key1", "value1");\r
+               try {\r
+                       instance.updateVnfA("mdt1", "88a6ca3ee0394ade9403f075db23167e", "vnf", "1", "vSAMP12", "VFMOD",\r
+                                       "volumeGroupHeatStackId|1", map, "messageId", msoRequest,\r
+                                       "http://org.openecomp.mso/notify/adapterNotify/updateVnfNotificationRequest");\r
+               } catch (Exception e) {\r
+\r
+               }\r
+       }\r
+\r
+       @Test\r
+       public void queryVnfTest() {\r
+               MsoVnfAdapterAsyncImpl instance = new MsoVnfAdapterAsyncImpl();\r
+               MsoRequest msoRequest = new MsoRequest();\r
+               msoRequest.setRequestId("12345");\r
+               msoRequest.setServiceInstanceId("12345");\r
+               try {\r
+                       instance.queryVnfA("mdt1", "88a6ca3ee0394ade9403f075db23167e", "vSAMP12", "messageId", msoRequest,\r
+                                       "http://org.openecomp.mso/notify/adapterNotify/updateVnfNotificationRequest");\r
+               } catch (Exception e) {\r
+\r
+               }\r
+       }\r
+\r
+       @Test\r
+       public void deleteVnfTest() {\r
+               MsoVnfAdapterAsyncImpl instance = new MsoVnfAdapterAsyncImpl();\r
+               MsoRequest msoRequest = new MsoRequest();\r
+               msoRequest.setRequestId("12345");\r
+               msoRequest.setServiceInstanceId("12345");\r
+               try {\r
+                       instance.deleteVnfA("mdt1", "88a6ca3ee0394ade9403f075db23167e", "vSAMP12", "messageId", msoRequest,\r
+                                       "http://org.openecomp.mso/notify/adapterNotify/updateVnfNotificationRequest");\r
+               } catch (Exception e) {\r
+\r
+               }\r
+       }\r
+\r
+       @Test\r
+       public void rollbackVnfTest() {\r
+               MsoVnfAdapterAsyncImpl instance = new MsoVnfAdapterAsyncImpl();\r
+               VnfRollback vnfRollBack = new VnfRollback();\r
+               vnfRollBack.setCloudSiteId("mdt1");\r
+               vnfRollBack.setTenantId("88a6ca3ee0394ade9403f075db23167e");\r
+               vnfRollBack.setVnfId("ff5256d1-5a33-55df-13ab-12abad84e7ff");\r
+               try {\r
+                       instance.rollbackVnfA(vnfRollBack, "messageId",\r
+                                       "http://org.openecomp.mso/notify/adapterNotify/updateVnfNotificationRequest");\r
+               } catch (Exception e) {\r
+\r
+               }\r
+       }\r
+}\r
diff --git a/adapters/mso-vnf-adapter/src/test/java/org/openecomp/mso/adapters/vnf/test/MsoVnfAdapterImplTest.java b/adapters/mso-vnf-adapter/src/test/java/org/openecomp/mso/adapters/vnf/test/MsoVnfAdapterImplTest.java
new file mode 100644 (file)
index 0000000..7787908
--- /dev/null
@@ -0,0 +1,156 @@
+/*-\r
+ * ============LICENSE_START=======================================================\r
+ * ONAP - SO\r
+ * ================================================================================\r
+ * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.\r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ *      http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ============LICENSE_END=========================================================\r
+ */\r
+\r
+package org.openecomp.mso.adapters.vnf.test;\r
+\r
+import java.util.HashMap;\r
+import java.util.Map;\r
+\r
+import javax.xml.ws.Holder;\r
+\r
+import org.junit.Test;\r
+import org.openecomp.mso.adapters.vnf.MsoVnfAdapterImpl;\r
+import org.openecomp.mso.db.catalog.CatalogDatabase;\r
+import org.openecomp.mso.db.catalog.beans.VfModule;\r
+import org.openecomp.mso.db.catalog.beans.VfModuleCustomization;\r
+import org.openecomp.mso.db.catalog.beans.VnfResource;\r
+import org.openecomp.mso.entity.MsoRequest;\r
+import org.openecomp.mso.openstack.beans.HeatStatus;\r
+import org.openecomp.mso.openstack.beans.StackInfo;\r
+import org.openecomp.mso.openstack.beans.VnfRollback;\r
+import org.openecomp.mso.openstack.exceptions.MsoException;\r
+import org.openecomp.mso.openstack.utils.MsoHeatUtils;\r
+\r
+import mockit.Mock;\r
+import mockit.MockUp;\r
+\r
+public class MsoVnfAdapterImplTest {\r
+\r
+       @Test\r
+       public void healthCheckVNFTest() {\r
+               MsoVnfAdapterImpl instance = new MsoVnfAdapterImpl();\r
+               instance.healthCheck();\r
+       }\r
+\r
+       @Test\r
+       public void createVnfTest() {\r
+\r
+               new MockUp<MsoHeatUtils>() {\r
+                       @Mock\r
+                       public StackInfo queryStack(String cloudSiteId, String tenantId, String stackName) throws MsoException {\r
+                               StackInfo info = new StackInfo();\r
+                               info.setStatus(HeatStatus.CREATED);\r
+                               return info;\r
+                       }\r
+               };\r
+\r
+               MsoVnfAdapterImpl instance = new MsoVnfAdapterImpl();\r
+               MsoRequest msoRequest = new MsoRequest();\r
+               msoRequest.setRequestId("12345");\r
+               msoRequest.setServiceInstanceId("12345");\r
+\r
+               Map<String, String> map = new HashMap<>();\r
+               map.put("key1", "value1");\r
+               try {\r
+                       instance.createVfModule("mdt1", "88a6ca3ee0394ade9403f075db23167e", "vnf", "1", "vSAMP12", "VFMOD",\r
+                                       "volumeGroupHeatStackId|1", "baseVfHeatStackId", "88a6ca3ee0394ade9403f075db23167e", map,\r
+                                       Boolean.FALSE, Boolean.TRUE, msoRequest, new Holder<>(), new Holder<Map<String, String>>(),\r
+                                       new Holder<VnfRollback>());\r
+               } catch (Exception e) {\r
+\r
+               }\r
+       }\r
+\r
+       @Test\r
+       public void updateVnfTest() {\r
+\r
+               new MockUp<MsoHeatUtils>() {\r
+                       @Mock\r
+                       public StackInfo queryStack(String cloudSiteId, String tenantId, String stackName) throws MsoException {\r
+                               StackInfo info = new StackInfo();\r
+                               info.setStatus(HeatStatus.CREATED);\r
+                               return info;\r
+                       }\r
+               };\r
+\r
+               new MockUp<CatalogDatabase>() {\r
+                       @Mock\r
+                       public VfModuleCustomization getVfModuleCustomizationByModelCustomizationId(String modelCustomizationUuid) {\r
+                               VfModuleCustomization vfcModule = new VfModuleCustomization();\r
+                               VfModule vfm = new VfModule();\r
+                               vfm.setVnfResourceModelUUId("88a6ca3ee0394ade9403f075db23167e");\r
+                               vfcModule.setVfModule(vfm);\r
+                               return vfcModule;\r
+                       }\r
+               };\r
+\r
+               new MockUp<CatalogDatabase>() {\r
+                       @Mock\r
+                       public VnfResource getVnfResourceByModelUuid(String modelUuid) {\r
+                               VnfResource vnfResource = new VnfResource();\r
+                               vnfResource.setAicVersionMin("1");\r
+                               vnfResource.setAicVersionMax("2");\r
+                               return vnfResource;\r
+                       }\r
+               };\r
+\r
+               MsoVnfAdapterImpl instance = new MsoVnfAdapterImpl();\r
+               MsoRequest msoRequest = new MsoRequest();\r
+               msoRequest.setRequestId("12345");\r
+               msoRequest.setServiceInstanceId("12345");\r
+\r
+               Map<String, String> map = new HashMap<>();\r
+               map.put("key1", "value1");\r
+               try {\r
+                       instance.updateVfModule("mdt1", "88a6ca3ee0394ade9403f075db23167e", "vnf", "1", "vSAMP12", "VFMOD",\r
+                                       "volumeGroupHeatStackId|1", "baseVfHeatStackId", "vfModuleStackId",\r
+                                       "88a6ca3ee0394ade9403f075db23167e", map, msoRequest, new Holder<Map<String, String>>(),\r
+                                       new Holder<VnfRollback>());\r
+               } catch (Exception e) {\r
+\r
+               }\r
+       }\r
+\r
+       @Test\r
+       public void deleteVnfTest() {\r
+               new MockUp<MsoHeatUtils>() {\r
+                       @Mock\r
+                       public Map<String, Object> queryStackForOutputs(String cloudSiteId, String tenantId, String stackName)\r
+                                       throws MsoException {\r
+                               \r
+                               Map<String, Object> outputs = new HashMap<>();\r
+                               outputs.put("Key1", "value1");\r
+                               return outputs;\r
+                       }\r
+               };\r
+\r
+               MsoVnfAdapterImpl instance = new MsoVnfAdapterImpl();\r
+               MsoRequest msoRequest = new MsoRequest();\r
+               msoRequest.setRequestId("12345");\r
+               msoRequest.setServiceInstanceId("12345");\r
+               try {\r
+                       instance.deleteVfModule("mdt1", "88a6ca3ee0394ade9403f075db23167e", "vSAMP12", msoRequest,\r
+                                       new Holder<Map<String, String>>());\r
+               } catch (Exception e) {\r
+\r
+               }\r
+       }\r
+\r
+}\r