2 * ============LICENSE_START=======================================================
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
11 * http://www.apache.org/licenses/LICENSE-2.0
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=========================================================
21 package org.openecomp.mso.adapters.network;
24 import static org.junit.Assert.assertTrue;
26 import java.util.LinkedList;
27 import java.util.List;
30 import javax.xml.ws.Holder;
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.cloud.CloudConfig;
38 import org.openecomp.mso.cloud.CloudConfigFactory;
39 import org.openecomp.mso.db.catalog.CatalogDatabase;
40 import org.openecomp.mso.db.catalog.beans.NetworkResource;
41 import org.openecomp.mso.db.catalog.beans.NetworkResourceCustomization;
42 import org.openecomp.mso.entity.MsoRequest;
43 import org.openecomp.mso.openstack.beans.NetworkRollback;
44 import org.openecomp.mso.openstack.beans.NetworkStatus;
45 import org.openecomp.mso.openstack.beans.RouteTarget;
46 import org.openecomp.mso.openstack.beans.Subnet;
48 public class NetworkAdapterTest {
51 private static MsoNetworkAdapterImpl adapter;
54 private static CatalogDatabase db;
57 private static CloudConfigFactory cloudConfigFactory;
60 public static final void prepare () {
61 adapter = Mockito.spy (new MsoNetworkAdapterImpl ());
62 db = Mockito.mock (CatalogDatabase.class);
63 cloudConfigFactory = Mockito.mock(CloudConfigFactory.class);
64 NetworkResource networkResource = new NetworkResource ();
65 NetworkResourceCustomization nrc = new NetworkResourceCustomization();
66 nrc.setNetworkResource(networkResource);
67 nrc.setNetworkType("PROVIDER");
68 networkResource.setNeutronNetworkType ("PROVIDER");
69 networkResource.setModelUUID("b4a6af8c-a22b-45d5-a880-29527f8f59a7");
70 nrc.setNetworkResourceModelUuid(networkResource.getModelUUID());
71 networkResource.setOrchestrationMode ("toto");
72 Mockito.when (db.getNetworkResource ("PROVIDER")).thenReturn (networkResource);
73 Mockito.when (adapter.getCatalogDB ()).thenReturn (db);
74 CloudConfig cloudConfig = Mockito.mock(CloudConfig.class);
75 Mockito.when(cloudConfigFactory.getCloudConfig()).thenReturn(cloudConfig);
76 Mockito.when (adapter.getCloudConfigFactory()).thenReturn(cloudConfigFactory);
80 public void createTest () {
82 List <Integer> vlans = new LinkedList <> ();
85 List <Subnet> subnets = new LinkedList <> ();
86 subnets.add (new Subnet ());
87 MsoRequest msoRequest = new MsoRequest ();
88 Holder <String> networkId = new Holder <> ();
89 Holder <String> neutronNetworkId = new Holder <> ();
90 Holder <Map <String, String>> subnetIdMap = new Holder <> ();
91 Holder <NetworkRollback> rollback = new Holder <> ();
93 adapter.createNetwork ("toto",
98 "physicalNetworkName",
108 } catch (NetworkException e) {
109 assertTrue (e.getMessage ().contains ("Configuration Error"));
110 } catch (java.lang.NullPointerException npe) {
116 public void createTest2 () {
117 List <Integer> vlans = new LinkedList <> ();
120 List <Subnet> subnets = new LinkedList <> ();
121 List <RouteTarget> routeTargets = new LinkedList <> ();
122 subnets.add (new Subnet ());
123 List <String> policyFqdns = new LinkedList <> ();
124 policyFqdns.add("pfqdn1");
125 policyFqdns.add("pfqdn2");
126 List <String> routeTableFqdns = new LinkedList <> ();
127 routeTableFqdns.add("rtfqdn1");
128 routeTableFqdns.add("rtfqdn2");
129 MsoRequest msoRequest = new MsoRequest ();
130 Holder <String> networkId = new Holder <> ();
131 Holder <String> neutronNetworkId = new Holder <> ();
132 Holder <Map <String, String>> subnetIdMap = new Holder <> ();
133 Holder <NetworkRollback> rollback = new Holder <> ();
134 Holder <String> networkFqdn= new Holder <> ();
136 adapter.createNetworkContrail ("toto",
155 } catch (NetworkException e) {
156 assertTrue (e.getMessage ().contains ("Configuration Error"));
157 } catch (java.lang.NullPointerException npe) {
163 public void updateTest () {
164 List <Integer> vlans = new LinkedList <> ();
167 List <Subnet> subnets = new LinkedList <> ();
168 subnets.add (new Subnet ());
169 MsoRequest msoRequest = new MsoRequest ();
170 Holder <Map <String, String>> subnetIdMap = new Holder <> ();
171 Holder <NetworkRollback> rollback = new Holder <> ();
173 adapter.updateNetwork ("toto",
179 "physicalNetworkName",
185 } catch (NetworkException e) {
186 assertTrue (e.getMessage ().contains ("Configuration Error"));
187 } catch (java.lang.NullPointerException npe) {
193 public void updateTest2 () {
194 List <Integer> vlans = new LinkedList <> ();
197 List <Subnet> subnets = new LinkedList <> ();
198 List <RouteTarget> routeTargets = new LinkedList <> ();
199 subnets.add (new Subnet ());
200 List <String> policyFqdns = new LinkedList <> ();
201 policyFqdns.add("pfqdn1");
202 List <String> routeTableFqdns = new LinkedList <> ();
203 routeTableFqdns.add("rtfqdn1");
204 routeTableFqdns.add("rtfqdn2");
205 MsoRequest msoRequest = new MsoRequest ();
206 Holder <Map <String, String>> subnetIdMap = new Holder <> ();
207 Holder <NetworkRollback> rollback = new Holder <> ();
209 adapter.updateNetworkContrail ("toto",
224 } catch (NetworkException e) {
225 assertTrue (e.getMessage ().contains ("Configuration Error"));
226 } catch (java.lang.NullPointerException npe) {
232 public void queryTest () {
233 Holder <List <Integer>> vlans = new Holder <> ();
234 Holder <NetworkStatus> status = new Holder <> ();
235 MsoRequest msoRequest = new MsoRequest ();
236 Holder <String> networkId = new Holder <> ();
237 Holder <Boolean> result = new Holder <> ();
238 Holder <String> neutronNetworkId = new Holder <> ();
239 Holder <Map <String, String>> subnetIdMap = new Holder <> ();
241 adapter.queryNetwork (null,
251 } catch (NetworkException e) {
252 assertTrue (e.getMessage ().contains ("Missing mandatory parameter"));
253 } catch (java.lang.NullPointerException npe) {
259 public void queryTest2 () {
260 Holder <List <RouteTarget>> routeTargets = new Holder <> ();
261 Holder <NetworkStatus> status = new Holder <> ();
262 MsoRequest msoRequest = new MsoRequest ();
263 Holder <String> networkId = new Holder <> ();
264 Holder <Boolean> result = new Holder <> ();
265 Holder <String> neutronNetworkId = new Holder <> ();
266 Holder <Map <String, String>> subnetIdMap = new Holder <> ();
268 adapter.queryNetworkContrail (null,
278 } catch (NetworkException e) {
279 assertTrue (e.getMessage ().contains ("Missing mandatory parameter"));
280 } catch (java.lang.NullPointerException npe) {
286 public void deleteTest () {
287 Holder <Boolean> networkDeleted = new Holder<> ();
288 MsoRequest msoRequest = new MsoRequest ();
290 adapter.deleteNetwork ("toto", "tenant", "PROVIDER", "modelCustUuid", "networkId", msoRequest, networkDeleted);
291 } catch (NetworkException e) {
293 assertTrue (e.getMessage ().contains ("Cloud Site [toto] not found"));
294 } catch (java.lang.NullPointerException npe) {