Merge "Adding Junit"
[so.git] / adapters / mso-network-adapter / src / test / java / org / openecomp / mso / adapters / network / NetworkAdapterTest.java
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.adapters.network;
22
23
24 import static org.junit.Assert.assertTrue;
25
26 import java.util.LinkedList;
27 import java.util.List;
28 import java.util.Map;
29
30 import javax.xml.ws.Holder;
31
32 import org.junit.BeforeClass;
33 import org.junit.Test;
34 import org.mockito.Mock;
35 import org.mockito.Mockito;
36 import org.openecomp.mso.adapters.network.exceptions.NetworkException;
37 import org.openecomp.mso.db.catalog.CatalogDatabase;
38 import org.openecomp.mso.db.catalog.beans.NetworkResource;
39 import org.openecomp.mso.db.catalog.beans.NetworkResourceCustomization;
40 import org.openecomp.mso.entity.MsoRequest;
41 import org.openecomp.mso.openstack.beans.NetworkRollback;
42 import org.openecomp.mso.openstack.beans.NetworkStatus;
43 import org.openecomp.mso.openstack.beans.RouteTarget;
44 import org.openecomp.mso.openstack.beans.Subnet;
45
46 public class NetworkAdapterTest {
47
48     @Mock
49     private static MsoNetworkAdapterImpl adapter;
50
51     @Mock
52     private static CatalogDatabase db;
53
54     @BeforeClass
55     public static final void prepare () {
56         adapter = Mockito.spy (new MsoNetworkAdapterImpl ());
57         db = Mockito.mock (CatalogDatabase.class);
58         NetworkResource networkResource = new NetworkResource ();
59         NetworkResourceCustomization nrc = new NetworkResourceCustomization();
60         nrc.setNetworkResource(networkResource);
61         nrc.setNetworkType("PROVIDER");
62         networkResource.setNeutronNetworkType ("PROVIDER");
63         networkResource.setModelUUID("b4a6af8c-a22b-45d5-a880-29527f8f59a7");
64         nrc.setNetworkResourceModelUuid(networkResource.getModelUUID());
65         networkResource.setOrchestrationMode ("toto");
66         Mockito.when (db.getNetworkResource ("PROVIDER")).thenReturn (networkResource);
67         Mockito.when (adapter.getCatalogDB ()).thenReturn (db);
68     }
69
70     @Test
71     public void createTest () {
72
73         List <Integer> vlans = new LinkedList <> ();
74         vlans.add (1);
75         vlans.add (2);
76         List <Subnet> subnets = new LinkedList <> ();
77         subnets.add (new Subnet ());
78         MsoRequest msoRequest = new MsoRequest ();
79         Holder <String> networkId = new Holder <> ();
80         Holder <String> neutronNetworkId = new Holder <> ();
81         Holder <Map <String, String>> subnetIdMap = new Holder <> ();
82         Holder <NetworkRollback> rollback = new Holder <> ();
83         try {
84             adapter.createNetwork ("toto",
85                                    "tenant",
86                                    "PROVIDER",
87                                     "modelCustUuid",
88                                    "networkName",
89                                    "physicalNetworkName",
90                                    vlans,
91                                    Boolean.TRUE,
92                                    Boolean.TRUE,
93                                    subnets,
94                                    msoRequest,
95                                    networkId,
96                                    neutronNetworkId,
97                                    subnetIdMap,
98                                    rollback);
99         } catch (NetworkException e) {
100             assertTrue (e.getMessage ().contains ("Configuration Error"));
101         } catch (java.lang.NullPointerException npe) {
102                 
103         }
104     }
105
106     @Test
107     public void createTest2 () {
108         List <Integer> vlans = new LinkedList <> ();
109         vlans.add (1);
110         vlans.add (2);
111         List <Subnet> subnets = new LinkedList <> ();
112         List <RouteTarget> routeTargets = new LinkedList <> ();
113         subnets.add (new Subnet ());
114         List <String> policyFqdns = new LinkedList <> ();
115         policyFqdns.add("pfqdn1");
116         policyFqdns.add("pfqdn2");
117         List <String> routeTableFqdns = new LinkedList <> ();
118         routeTableFqdns.add("rtfqdn1");
119         routeTableFqdns.add("rtfqdn2");
120         MsoRequest msoRequest = new MsoRequest ();
121         Holder <String> networkId = new Holder <> ();
122         Holder <String> neutronNetworkId = new Holder <> ();
123         Holder <Map <String, String>> subnetIdMap = new Holder <> ();
124         Holder <NetworkRollback> rollback = new Holder <> ();
125         Holder <String> networkFqdn= new Holder <> ();
126         try {
127             adapter.createNetworkContrail ("toto",
128                                            "tenant",
129                                            "PROVIDER",
130                                             "modelCustUuid",
131                                            "networkName",
132                                            routeTargets,
133                                            "shared",
134                                            "external",
135                                            Boolean.TRUE,
136                                            Boolean.TRUE,
137                                            subnets,
138                                            policyFqdns,
139                                            routeTableFqdns,
140                                            msoRequest,
141                                            networkId,
142                                            neutronNetworkId,
143                                            networkFqdn,
144                                            subnetIdMap,
145                                            rollback);
146         } catch (NetworkException e) {
147             assertTrue (e.getMessage ().contains ("Configuration Error"));
148         } catch (java.lang.NullPointerException npe) {
149                 
150         }
151     }
152
153     @Test
154     public void updateTest () {
155         List <Integer> vlans = new LinkedList <> ();
156         vlans.add (1);
157         vlans.add (2);
158         List <Subnet> subnets = new LinkedList <> ();
159         subnets.add (new Subnet ());
160         MsoRequest msoRequest = new MsoRequest ();
161         Holder <Map <String, String>> subnetIdMap = new Holder <> ();
162         Holder <NetworkRollback> rollback = new Holder <> ();
163         try {
164             adapter.updateNetwork ("toto",
165                                    "tenant",
166                                    "PROVIDER",
167                                     "modelCustUuid",
168                                    "networkId",
169                                    "networkName",
170                                    "physicalNetworkName",
171                                    vlans,
172                                    subnets,
173                                    msoRequest,
174                                    subnetIdMap,
175                                    rollback);
176         } catch (NetworkException e) {
177             assertTrue (e.getMessage ().contains ("Configuration Error"));
178         } catch (java.lang.NullPointerException npe) {
179                 
180         }
181     }
182
183     @Test
184     public void updateTest2 () {
185         List <Integer> vlans = new LinkedList <> ();
186         vlans.add (1);
187         vlans.add (2);
188         List <Subnet> subnets = new LinkedList <> ();
189         List <RouteTarget> routeTargets = new LinkedList <> ();
190         subnets.add (new Subnet ());
191         List <String> policyFqdns = new LinkedList <> ();
192         policyFqdns.add("pfqdn1");
193         List <String> routeTableFqdns = new LinkedList <> ();
194         routeTableFqdns.add("rtfqdn1");
195         routeTableFqdns.add("rtfqdn2");
196         MsoRequest msoRequest = new MsoRequest ();
197         Holder <Map <String, String>> subnetIdMap = new Holder <> ();
198         Holder <NetworkRollback> rollback = new Holder <> ();
199         try {
200             adapter.updateNetworkContrail ("toto",
201                                            "tenant",
202                                            "PROVIDER",
203                                             "modelCustUuid",
204                                            "networkId",
205                                            "networkName",
206                                            routeTargets,
207                                            "shared",
208                                            "external",
209                                            subnets,
210                                            policyFqdns,
211                                            routeTableFqdns,
212                                            msoRequest,
213                                            subnetIdMap,
214                                            rollback);
215         } catch (NetworkException e) {
216             assertTrue (e.getMessage ().contains ("Configuration Error"));
217         } catch (java.lang.NullPointerException npe) {
218                 
219         }
220     }
221
222     @Test
223     public void queryTest () {
224         Holder <List <Integer>> vlans = new Holder <> ();
225         Holder <NetworkStatus> status = new Holder <> ();
226         MsoRequest msoRequest = new MsoRequest ();
227         Holder <String> networkId = new Holder <> ();
228         Holder <Boolean> result = new Holder <> ();
229         Holder <String> neutronNetworkId = new Holder <> ();
230         Holder <Map <String, String>> subnetIdMap = new Holder <> ();
231         try {
232             adapter.queryNetwork (null,
233                                   "tenant",
234                                   "networkName",
235                                   msoRequest,
236                                   result,
237                                   networkId,
238                                   neutronNetworkId,
239                                   status,
240                                   vlans,
241                                   subnetIdMap);
242         } catch (NetworkException e) {
243             assertTrue (e.getMessage ().contains ("Missing mandatory parameter"));
244         } catch (java.lang.NullPointerException npe) {
245                 
246         }
247     }
248
249     @Test
250     public void queryTest2 () {
251         Holder <List <RouteTarget>> routeTargets = new Holder <> ();
252         Holder <NetworkStatus> status = new Holder <> ();
253         MsoRequest msoRequest = new MsoRequest ();
254         Holder <String> networkId = new Holder <> ();
255         Holder <Boolean> result = new Holder <> ();
256         Holder <String> neutronNetworkId = new Holder <> ();
257         Holder <Map <String, String>> subnetIdMap = new Holder <> ();
258         try {
259             adapter.queryNetworkContrail (null,
260                                           "tenant",
261                                           "networkName",
262                                           msoRequest,
263                                           result,
264                                           networkId,
265                                           neutronNetworkId,
266                                           status,
267                                           routeTargets,
268                                           subnetIdMap);
269         } catch (NetworkException e) {
270             assertTrue (e.getMessage ().contains ("Missing mandatory parameter"));
271         } catch (java.lang.NullPointerException npe) {
272                 
273         }
274     }
275
276     @Test
277     public void deleteTest () {
278         Holder <Boolean> networkDeleted = new Holder<> ();
279         MsoRequest msoRequest = new MsoRequest ();
280         try {
281             adapter.deleteNetwork ("toto", "tenant", "PROVIDER", "modelCustUuid", "networkId", msoRequest, networkDeleted);
282         } catch (NetworkException e) {
283                 e.printStackTrace();
284             assertTrue (e.getMessage ().contains ("Cloud Site [toto] not found"));
285         } catch (java.lang.NullPointerException npe) {
286                 
287         }
288     }
289 }