Add unit test case for VIM register utils.
[aai/esr-server.git] / esr-mgr / src / test / java / org / onap / aai / esr / util / VimManagerUtilTest.java
1 /**
2  * Copyright 2017 ZTE Corporation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package org.onap.aai.esr.util;
17
18 import static org.junit.Assert.assertEquals;
19
20 import java.util.ArrayList;
21
22 import org.junit.Test;
23 import org.onap.aai.esr.entity.aai.CloudRegionDetail;
24 import org.onap.aai.esr.entity.rest.VimAuthInfo;
25 import org.onap.aai.esr.entity.rest.VimRegisterInfo;
26
27 import com.google.gson.Gson;
28
29 public class VimManagerUtilTest {
30   
31   @Test
32   public void vimRegisterInfo2CloudRegionTest() {
33     VimManagerUtil vimManagerUtil = new VimManagerUtil();
34     CloudRegionDetail cloudRegionDetail = new CloudRegionDetail();
35     VimRegisterInfo vimRegisterInfo = new VimRegisterInfo();
36     ArrayList<VimAuthInfo> vimAuthInfos = new ArrayList<VimAuthInfo>();
37     VimAuthInfo vimAuthInfo = new VimAuthInfo();
38     vimAuthInfo.setAuthUrl("http://10.11.22.33:5000/v3");
39     vimAuthInfo.setCloudDomain("default");
40     vimAuthInfo.setPassword("123456");
41     vimAuthInfo.setSslCacert("test");
42     vimAuthInfo.setSslInsecure(true);
43     vimAuthInfo.setUserName("onap");
44     vimRegisterInfo.setCloudExtraInfo("{}");
45     vimRegisterInfo.setCloudOwner("zte");
46     vimRegisterInfo.setCloudRegionId("RegionOne");
47     vimRegisterInfo.setCloudRegionVersion("mitaca");
48     vimRegisterInfo.setCloudType("openstack");
49     vimRegisterInfo.setCloudZone("default");
50     vimRegisterInfo.setComplexName("complex");
51     vimRegisterInfo.setOwnerDefinedType("test");
52     vimRegisterInfo.setStatus("normal");
53     vimAuthInfos.add(vimAuthInfo);
54     vimRegisterInfo.setVimAuthInfos(vimAuthInfos);
55     cloudRegionDetail = vimManagerUtil.vimRegisterInfo2CloudRegion(vimRegisterInfo);
56     cloudRegionDetail.getEsrSystemInfoList().getEsrSystemInfo().get(0).setEsrSystemInfoId("123456");
57     String cloudRegionDetailStr = new ExtsysUtil().objectToString(cloudRegionDetail);
58     String expectResult = "{\"cloud-owner\":\"zte\","
59         + "\"cloud-region-id\":\"RegionOne\","
60         + "\"cloud-type\":\"openstack\","
61         + "\"cloud-region-version\":\"mitaca\","
62         + "\"owner-defined-type\":\"test\","
63         + "\"cloud-zone\":\"default\","
64         + "\"complex-name\":\"complex\","
65         + "\"cloud-extra-info\":\"{}\","
66         + "\"esr-system-info-list\":{"
67         + "\"esr-system-info\":[{"
68         + "\"esr-system-info-id\":\"123456\","
69         + "\"service-url\":\"http://10.11.22.33:5000/v3\","
70         + "\"user-name\":\"onap\","
71         + "\"password\":\"123456\","
72         + "\"system-type\":\"VIM\","
73         + "\"ssl-cassert\":\"test\","
74         + "\"ssl-insecure\":true,"
75         + "\"cloud-domain\":\"default\","
76         + "\"system-status\":\"normal\"}]}}";
77     assertEquals(expectResult, cloudRegionDetailStr);
78   }
79   
80   @Test
81   public void cloudRegion2VimRegisterInfoTest() {
82     VimManagerUtil vimManagerUtil = new VimManagerUtil();
83     CloudRegionDetail cloudRegionDetail = new CloudRegionDetail();
84     VimRegisterInfo vimRegisterInfo = new VimRegisterInfo();
85     String cloudRegionDetailStr = "{\"cloud-owner\":\"zte\","
86         + "\"cloud-region-id\":\"RegionOne\","
87         + "\"cloud-type\":\"openstack\","
88         + "\"cloud-region-version\":\"mitaca\","
89         + "\"owner-defined-type\":\"test\","
90         + "\"cloud-zone\":\"default\","
91         + "\"complex-name\":\"complex\","
92         + "\"cloud-extra-info\":\"{}\","
93         + "\"esr-system-info-list\":{"
94         + "\"esr-system-info\":[{"
95         + "\"esr-system-info-id\":\"123456\","
96         + "\"service-url\":\"http://10.11.22.33:5000/v3\","
97         + "\"user-name\":\"onap\","
98         + "\"password\":\"123456\","
99         + "\"system-type\":\"VIM\","
100         + "\"ssl-cassert\":\"test\","
101         + "\"ssl-insecure\":true,"
102         + "\"cloud-domain\":\"default\","
103         + "\"system-status\":\"normal\"}]}}";
104     cloudRegionDetail = new Gson().fromJson(cloudRegionDetailStr, CloudRegionDetail.class);
105     vimRegisterInfo = vimManagerUtil.cloudRegion2VimRegisterInfo(cloudRegionDetail);
106     String vimRegisterInfoStr = new ExtsysUtil().objectToString(vimRegisterInfo);
107     String expectResult = "{\"cloudOwner\":\"zte\","
108         + "\"cloudRegionId\":\"RegionOne\","
109         + "\"cloudType\":\"openstack\","
110         + "\"cloudRegionVersion\":\"mitaca\","
111         + "\"ownerDefinedType\":\"test\","
112         + "\"cloudZone\":\"default\","
113         + "\"complexName\":\"complex\","
114         + "\"cloudExtraInfo\":\"{}\","
115         + "\"status\":\"normal\","
116         + "\"vimAuthInfos\":[{"
117         + "\"cloudDomain\":\"default\","
118         + "\"userName\":\"onap\","
119         + "\"password\":\"123456\","
120         + "\"authUrl\":\"http://10.11.22.33:5000/v3\","
121         + "\"sslCacert\":\"test\","
122         + "\"sslInsecure\":true}]}";
123     assertEquals(expectResult, vimRegisterInfoStr);
124   }
125 }