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.onap.so.adapters.network.mappers;
23 import static org.junit.Assert.assertEquals;
24 import java.util.ArrayList;
25 import java.util.List;
26 import java.util.Optional;
27 import org.junit.Test;
28 import org.onap.so.adapters.network.beans.ContrailSubnet;
29 import org.onap.so.adapters.network.beans.ContrailSubnetHostRoute;
30 import org.onap.so.adapters.network.beans.ContrailSubnetHostRoutes;
31 import org.onap.so.adapters.network.beans.ContrailSubnetIp;
32 import org.onap.so.adapters.network.beans.ContrailSubnetPool;
33 import org.onap.so.openstack.beans.HostRoute;
34 import org.onap.so.openstack.beans.Pool;
35 import org.onap.so.openstack.beans.Subnet;
37 public class ContrailSubnetMappersTest {
42 public void contrailSubnetHostRouteMapperTest() {
43 HostRoute hostRoute = new HostRoute();
44 hostRoute.setNextHop("hop");
45 hostRoute.setPrefix("prefix");
46 ContrailSubnetHostRouteMapper mapper = new ContrailSubnetHostRouteMapper(hostRoute);
47 ContrailSubnetHostRoute cshr = mapper.map();
48 assertEquals("hop", cshr.getNextHop());
49 assertEquals("prefix", cshr.getPrefix());
53 public void contrailSubnetPoolMapperTest() {
54 Pool pool = new Pool();
55 pool.setStart("start");
57 ContrailSubnetPoolMapper mapper = new ContrailSubnetPoolMapper(pool);
58 ContrailSubnetPool csPool = mapper.map();
59 assertEquals("start", csPool.getStart());
60 assertEquals("end", csPool.getEnd());
64 public void checkIsNullOrEmpty() {
65 ContrailSubnetMapper mapper = new ContrailSubnetMapper(null);
66 assertEquals(true, mapper.isNullOrEmpty(""));
67 assertEquals(true, mapper.isNullOrEmpty(null));
68 assertEquals(false, mapper.isNullOrEmpty("hello"));
72 public void createSubnetTestValidCidr() {
73 Subnet subnet = new Subnet();
74 subnet.setCidr("test/value");
75 ContrailSubnetMapper mapper = new ContrailSubnetMapper(subnet);
76 ContrailSubnet result = mapper.map();
78 assertEquals("test", result.getSubnet().getIpPrefix());
79 assertEquals("value", result.getSubnet().getIpPrefixLen());
83 public void createSubnetTestInvalidCidr() {
84 Subnet subnet = new Subnet();
85 subnet.setCidr("test");
86 ContrailSubnetMapper mapper = new ContrailSubnetMapper(subnet);
87 ContrailSubnet result = mapper.map();
88 assertEquals(null, result.getSubnet().getIpPrefix());
89 assertEquals(null, result.getSubnet().getIpPrefixLen());
94 public void createSubnetTestNullCidr() {
95 Subnet subnet = new Subnet();
96 ContrailSubnetMapper mapper = new ContrailSubnetMapper(subnet);
97 ContrailSubnet result = mapper.map();
98 assertEquals(null, result.getSubnet().getIpPrefix());
99 assertEquals(null, result.getSubnet().getIpPrefixLen());
103 public void createContrailSubnetPoolTest() {
104 List<Pool> pools = new ArrayList<>();
105 Pool pool1 = new Pool();
106 pool1.setStart("start1");
107 pool1.setEnd("end1");
108 Pool pool2 = new Pool();
109 pool2.setStart("start2");
110 pool2.setEnd("end2");
114 Subnet subnet = new Subnet();
115 subnet.setAllocationPools(pools);
116 ContrailSubnetMapper mapper = new ContrailSubnetMapper(subnet);
117 ContrailSubnet result = mapper.map();
118 List<ContrailSubnetPool> cspools = result.getAllocationPools();
119 assertEquals(2, cspools.size());
120 assertEquals("start2", cspools.get(1).getStart());
121 assertEquals("end2", cspools.get(1).getEnd());
125 public void createContrailSubnetPoolInvalidTest() {
126 List<Pool> pools = new ArrayList<>();
127 Pool pool1 = new Pool();
128 pool1.setStart("start1");
129 pool1.setEnd("end1");
130 Pool pool2 = new Pool();
131 pool2.setStart("start2");
135 Subnet subnet = new Subnet();
136 subnet.setAllocationPools(pools);
137 ContrailSubnetMapper mapper = new ContrailSubnetMapper(subnet);
138 ContrailSubnet result = mapper.map();
139 List<ContrailSubnetPool> cspools = result.getAllocationPools();
140 assertEquals(1, cspools.size());
141 assertEquals("start1", cspools.get(0).getStart());
142 assertEquals("end1", cspools.get(0).getEnd());
146 public void createContrailSubnetPoolEmptyTest() {
148 Subnet subnet = new Subnet();
149 ContrailSubnetMapper mapper = new ContrailSubnetMapper(subnet);
150 ContrailSubnet result = mapper.map();
151 List<ContrailSubnetPool> cspools = result.getAllocationPools();
152 assertEquals(true, cspools.isEmpty());
157 public void createContrailSubnetHostRoutesTest() {
158 List<HostRoute> hostRoutes = new ArrayList<>();
159 HostRoute hostRoute1 = new HostRoute();
160 hostRoute1.setNextHop("next-hop1");
161 hostRoute1.setPrefix("prefix1");
162 HostRoute hostRoute2 = new HostRoute();
163 hostRoute2.setNextHop("next-hop2");
164 hostRoute2.setPrefix("prefix2");
165 hostRoutes.add(hostRoute1);
166 hostRoutes.add(hostRoute2);
168 Subnet subnet = new Subnet();
169 subnet.setHostRoutes(hostRoutes);
170 ContrailSubnetMapper mapper = new ContrailSubnetMapper(subnet);
171 ContrailSubnet result = mapper.map();
172 ContrailSubnetHostRoutes routes = result.getHostRoutes();
173 assertEquals(2, routes.getHostRoutes().size());
174 assertEquals("next-hop2", routes.getHostRoutes().get(1).getNextHop());
175 assertEquals("prefix2", routes.getHostRoutes().get(1).getPrefix());
179 public void createContrailSubnetHostRoutesMissingFieldTest() {
180 List<HostRoute> hostRoutes = new ArrayList<>();
181 HostRoute hostRoute1 = new HostRoute();
182 hostRoute1.setNextHop("next-hop1");
183 HostRoute hostRoute2 = new HostRoute();
184 hostRoute2.setNextHop("next-hop2");
185 hostRoute2.setPrefix("prefix2");
186 hostRoutes.add(hostRoute1);
187 hostRoutes.add(hostRoute2);
189 Subnet subnet = new Subnet();
190 subnet.setHostRoutes(hostRoutes);
191 ContrailSubnetMapper mapper = new ContrailSubnetMapper(subnet);
192 ContrailSubnet result = mapper.map();
193 ContrailSubnetHostRoutes routes = result.getHostRoutes();
194 assertEquals(2, routes.getHostRoutes().size());
195 assertEquals("next-hop1", routes.getHostRoutes().get(0).getNextHop());
196 assertEquals("prefix2", routes.getHostRoutes().get(1).getPrefix());
200 public void createContrailSubnetHostRoutesEmptyTest() {
201 List<HostRoute> hostRoutes = new ArrayList<>();
202 Subnet subnet = new Subnet();
203 subnet.setHostRoutes(hostRoutes);
204 ContrailSubnetMapper mapper = new ContrailSubnetMapper(subnet);
205 ContrailSubnet result = mapper.map();
206 ContrailSubnetHostRoutes routes = result.getHostRoutes();
207 assertEquals(true, routes.getHostRoutes().isEmpty());
211 public void getSubnetNameTest() {
212 Subnet subnet = new Subnet();
213 subnet.setSubnetName("name");
214 ContrailSubnetMapper mapper = new ContrailSubnetMapper(subnet);
215 assertEquals("if subnetName is populated map", "name", mapper.getSubnetName(subnet));
216 subnet = new Subnet();
217 subnet.setSubnetId("id");
218 mapper = new ContrailSubnetMapper(subnet);
219 assertEquals("choose id when name is null", "id", mapper.getSubnetName(subnet));
220 subnet = new Subnet();
221 mapper = new ContrailSubnetMapper(subnet);
222 assertEquals("expect null", null, mapper.getSubnetName(subnet));
226 public void mapRemainingFields() {
227 Subnet subnet = new Subnet();
228 subnet.setEnableDHCP(true);
229 subnet.setGatewayIp("gateway-ip");
230 ContrailSubnetMapper mapper = new ContrailSubnetMapper(subnet);
231 ContrailSubnet result = mapper.map();
232 assertEquals(true, result.isEnableDhcp());
233 assertEquals("gateway-ip", result.getDefaultGateway());