Add Nfvo external system backend changes in ESR
[aai/esr-server.git] / esr-mgr / src / test / java / org / onap / aai / esr / wrapper / NfvoManagerWrapperTest.java
1 /**
2  * Copyright 2019  Verizon. All Rights Reserved.
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.wrapper;
17
18 import static org.junit.Assert.assertEquals;
19 import java.util.ArrayList;
20 import java.util.List;
21 import javax.ws.rs.core.Response;
22 import org.junit.Assert;
23 import org.junit.Test;
24 import org.mockito.Mockito;
25 import org.onap.aai.esr.common.MsbConfig;
26 import org.onap.aai.esr.entity.aai.EsrNfvoDetail;
27 import org.onap.aai.esr.entity.rest.NfvoRegisterInfo;
28 import org.onap.aai.esr.exception.ExtsysException;
29 import org.onap.aai.esr.externalservice.aai.ExternalSystemProxy;
30 import org.onap.aai.esr.util.ExtsysUtil;
31
32 public class NfvoManagerWrapperTest {
33
34     static {
35         MsbConfig.setMsbServerAddr("http://127.0.0.1:80");
36     }
37
38     @Test
39     public void test_registerNfvo() throws ExtsysException {
40         NfvoRegisterInfo nfvoRegisterInfo = new NfvoRegisterInfo();
41         nfvoRegisterInfo.setApiroot("abcd/");
42         nfvoRegisterInfo.setVersion("v1");
43         nfvoRegisterInfo.setVendor("zte");
44         nfvoRegisterInfo.setUserName("onap");
45         nfvoRegisterInfo.setUrl("http://ip:8000");
46         nfvoRegisterInfo.setPassword("987654");
47         nfvoRegisterInfo.setName("ONAP NFVO");
48         ExternalSystemProxy mockExternalSystemProxy = Mockito.mock(ExternalSystemProxy.class);
49         Mockito.doNothing().when(mockExternalSystemProxy).registerNfvo(Mockito.anyString(), (EsrNfvoDetail)Mockito.anyObject());
50         NfvoManagerWrapper nfvoManagerWrapper = new NfvoManagerWrapper(mockExternalSystemProxy);
51         Response response = nfvoManagerWrapper.registerNfvo(nfvoRegisterInfo);
52         if (response != null) {
53             Assert.assertTrue(response.getStatus() == 200);
54         }
55     }
56
57     @Test
58     public void test_queryNfvoById() throws ExtsysException {
59         ExtsysUtil extsysUtil = new ExtsysUtil();
60         NfvoRegisterInfo nfvoRegisterInfo = new NfvoRegisterInfo();
61         nfvoRegisterInfo.setApiroot("abcd/");
62         nfvoRegisterInfo.setVersion("v1");
63         nfvoRegisterInfo.setVendor("zte");
64         nfvoRegisterInfo.setUserName("onap");
65         nfvoRegisterInfo.setUrl("http://ip:8000");
66         nfvoRegisterInfo.setPassword("987654");
67         nfvoRegisterInfo.setName("ONAP NFVO");
68         nfvoRegisterInfo.setNfvoId("123456");
69         String esrNfvoDetailStr = "{\"nfvo-id\":\"123456\",\"api-root\":\"abcd/\","
70                 + "\"esr-system-info-list\":{"
71                 + "\"esr-system-info\":[{\"esr-system-info-id\":\"qwerty\",\"system-name\":\"ONAP NFVO\","
72                 + "\"vendor\":\"zte\",\"version\":\"v1\","
73                 + "\"service-url\":\"http://ip:8000\",\"user-name\":\"onap\","
74                 + "\"password\":\"987654\",\"system-type\":\"NFVO\"}]}}";
75         ExternalSystemProxy mockExternalSystemProxy = Mockito.mock(ExternalSystemProxy.class);
76         Mockito.when(mockExternalSystemProxy.queryNfvoDetail(Mockito.anyString())).thenReturn(esrNfvoDetailStr);
77         NfvoManagerWrapper nfvoManagerWrapper = new NfvoManagerWrapper(mockExternalSystemProxy);
78         Response response = nfvoManagerWrapper.queryNfvoById("123456");
79         if (response != null) {
80             Assert.assertTrue(response.getStatus() == 200);
81             assertEquals(extsysUtil.objectToString(nfvoRegisterInfo), extsysUtil.objectToString(response.getEntity()));
82         }
83     }
84
85     @Test
86     public void test_queryNfvoList() throws ExtsysException {
87         ExtsysUtil extsysUtil = new ExtsysUtil();
88         List<NfvoRegisterInfo> nfvoList = new ArrayList<>();
89         NfvoRegisterInfo nfvoRegisterInfo = new NfvoRegisterInfo();
90         nfvoRegisterInfo.setApiroot("abcd/");
91         nfvoRegisterInfo.setVersion("v1");
92         nfvoRegisterInfo.setVendor("zte");
93         nfvoRegisterInfo.setUserName("onap");
94         nfvoRegisterInfo.setUrl("http://ip:8000");
95         nfvoRegisterInfo.setPassword("987654");
96         nfvoRegisterInfo.setName("ONAP NFVO");
97         nfvoRegisterInfo.setNfvoId("123456");
98         nfvoList.add(nfvoRegisterInfo);
99         String nfvoListStr = "{\"esr-nfvo\": [{\"nfvo-id\": \"123456\",\"api-root\": \"abcd/\","
100                 + "\"resource-version\": \"1\"}]}";
101         String esrNfvoDetailStr = "{\"nfvo-id\":\"123456\",\"api-root\":\"abcd/\","
102                 + "\"esr-system-info-list\":{"
103                 + "\"esr-system-info\":[{\"esr-system-info-id\":\"qwerty\",\"system-name\":\"ONAP NFVO\","
104                 + "\"vendor\":\"zte\",\"version\":\"v1\","
105                 + "\"service-url\":\"http://ip:8000\",\"user-name\":\"onap\","
106                 + "\"password\":\"987654\",\"system-type\":\"NFVO\"}]}}";
107         ExternalSystemProxy mockExternalSystemProxy = Mockito.mock(ExternalSystemProxy.class);
108         Mockito.when(mockExternalSystemProxy.queryNfvoList()).thenReturn(nfvoListStr);
109         Mockito.when(mockExternalSystemProxy.queryNfvoDetail(Mockito.anyString())).thenReturn(esrNfvoDetailStr);
110         NfvoManagerWrapper nfvoManagerWrapper = new NfvoManagerWrapper(mockExternalSystemProxy);
111         Response response = nfvoManagerWrapper.queryNfvoList();
112         if (response != null) {
113             Assert.assertTrue(response.getStatus() == 200);
114             assertEquals(extsysUtil.objectToString(nfvoList), extsysUtil.objectToString(response.getEntity()));
115         }
116     }
117
118     @Test
119     public void test_delNfvo() throws ExtsysException {
120         ExternalSystemProxy mockExternalSystemProxy = Mockito.mock(ExternalSystemProxy.class);
121         Mockito.doNothing().when(mockExternalSystemProxy).deleteNfvo(Mockito.anyString(), Mockito.anyString());
122         NfvoManagerWrapper nfvoManagerWrapper = new NfvoManagerWrapper(mockExternalSystemProxy);
123         Response response = nfvoManagerWrapper.delNfvo("123456");
124         if (response != null) {
125             Assert.assertTrue(response.getStatus() == 204);
126         }
127     }
128 }