2 * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.lispflowmapping.lisp.util;
10 import static org.junit.Assert.assertArrayEquals;
11 import static org.junit.Assert.assertEquals;
12 import static org.junit.Assert.assertFalse;
13 import static org.junit.Assert.assertTrue;
15 import java.net.Inet4Address;
16 import java.net.Inet6Address;
17 import java.net.UnknownHostException;
18 import org.junit.Test;
19 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.IpAddress;
20 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.IpPrefix;
21 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Ipv4Address;
22 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Ipv4Prefix;
23 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Ipv6Address;
24 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Ipv6Prefix;
25 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.InstanceIdType;
26 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.ServicePathIdType;
27 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.SimpleAddress;
28 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address.Address;
29 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
31 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
32 .address.InstanceIdBuilder;
33 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
35 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
36 .address.Ipv4PrefixBuilder;
37 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
39 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
40 .address.Ipv6PrefixBuilder;
41 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
43 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
45 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
46 .address.ServicePathBuilder;
47 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
48 .address.SourceDestKey;
49 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
50 .address.SourceDestKeyBuilder;
51 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev100924.MacAddress;
52 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.inet.binary.types.rev160303.Ipv4AddressBinary;
53 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.inet.binary.types.rev160303.Ipv6AddressBinary;
54 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address
55 .address.Ipv4BinaryBuilder;
56 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address
57 .address.Ipv4PrefixBinary;
58 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address
59 .address.Ipv4PrefixBinaryBuilder;
60 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address
61 .address.Ipv6BinaryBuilder;
62 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address
63 .address.Ipv6PrefixBinary;
64 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.binary.address.types.rev160504.augmented.lisp.address
65 .address.Ipv6PrefixBinaryBuilder;
66 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.Eid;
67 import org.opendaylight.yang.gen.v1.urn.opendaylight.lfm.lisp.proto.rev151105.eid.container.EidBuilder;
69 public class MaskUtilTest {
71 private static final String IPV4_STRING = "255.255.255.255";
72 private static final String IPV6_STRING = "1111:2222:3333:4444:5555:6666:7777:8888";
73 private static byte[] ipv4ByteAddress;
74 private static byte[] ipv4ExpectedByteAddress;
75 private static byte[] ipv6ByteAddress;
76 private static byte[] ipv6ExpectedByteAddress;
80 ipv4ByteAddress = Inet4Address.getByName(IPV4_STRING).getAddress();
81 ipv4ExpectedByteAddress = Inet4Address.getByName("255.255.240.0").getAddress();
82 ipv6ByteAddress = Inet6Address.getByName(IPV6_STRING).getAddress();
83 ipv6ExpectedByteAddress = Inet6Address.getByName("1111:2222:3333:4444:4000::").getAddress();
84 } catch (UnknownHostException e) {
89 private static final String IPV4_STRING_1 = "1.2.3.0";
90 private static final String IPV4_STRING_2 = "1.3.4.0";
91 private static final String MASK_1 = "/32";
92 private static final String MASK_2 = "/20";
93 private static final String MASK_3 = "/66";
94 private static final String MASK_4 = "/128";
95 private static final String MAC_STRING = "aa:bb:cc:dd:ee:ff";
97 private static final Ipv4Address IPV4_ADDRESS = new Ipv4Address(IPV4_STRING_1);
98 private static final Ipv6Address IPV6_ADDRESS = new Ipv6Address(IPV6_STRING);
99 private static final Ipv4Prefix IPV4_PREFIX = new Ipv4Prefix(IPV4_STRING_1 + MASK_1);
100 private static final Ipv6Prefix IPV6_PREFIX = new Ipv6Prefix(IPV6_STRING + MASK_4);
101 private static final Ipv4AddressBinary IPV4_ADDRESS_BINARY = new Ipv4AddressBinary(ipv4ByteAddress);
102 private static final Ipv6AddressBinary IPV6_ADDRESS_BINARY = new Ipv6AddressBinary(ipv6ByteAddress);
103 private static final Ipv4PrefixBinary IPV4_PREFIX_BINARY = new Ipv4PrefixBinaryBuilder()
104 .setIpv4AddressBinary(IPV4_ADDRESS_BINARY).setIpv4MaskLength((short) 32).build();
105 private static final Ipv6PrefixBinary IPV6_PREFIX_BINARY = new Ipv6PrefixBinaryBuilder()
106 .setIpv6AddressBinary(IPV6_ADDRESS_BINARY).setIpv6MaskLength((short) 128).build();
108 private static final Address ADDRESS_IPV4 = new Ipv4Builder().setIpv4(IPV4_ADDRESS).build();
109 private static final Address ADDRESS_IPV6 = new Ipv6Builder().setIpv6(new Ipv6Address(IPV6_STRING)).build();
110 private static final Address ADDRESS_IPV4_BINARY = new Ipv4BinaryBuilder()
111 .setIpv4Binary(IPV4_ADDRESS_BINARY).build();
112 private static final Address ADDRESS_IPV6_BINARY = new Ipv6BinaryBuilder()
113 .setIpv6Binary(IPV6_ADDRESS_BINARY).build();
114 private static final Address ADDRESS_IPV4_PREFIX = new Ipv4PrefixBuilder()
115 .setIpv4Prefix(IPV4_PREFIX).build();
116 private static final Address ADDRESS_IPV6_PREFIX = new Ipv6PrefixBuilder()
117 .setIpv6Prefix(IPV6_PREFIX).build();
118 private static final Address ADDRESS_SOURCE_DEST_KEY = getDefaultSourceDestKeyAddressBuilder().build();
119 private static final Address ADDRESS_INSTANCE_ID_IP_PREFIX = getDefaultIpPrefixInstanceId();
120 private static final Address ADDRESS_INSTANCE_ID_IP = getDefaultIpInstanceId();
121 private static final Address ADDRESS_MAC = new MacBuilder().setMac(new MacAddress(MAC_STRING)).build();
122 private static final Address ADDRESS_SERVICE_PATH = getDefaultServicePath();
124 private static final SimpleAddress SIMPLE_ADDRESS_IPV4 = new SimpleAddress(new IpAddress(IPV4_ADDRESS));
125 private static final SimpleAddress SIMPLE_ADDRESS_IPV4_PREFIX = new SimpleAddress(new IpPrefix(IPV4_PREFIX));
126 private static final SimpleAddress SIMPLE_ADDRESS_IPV6_PREFIX = new SimpleAddress(new IpPrefix(IPV6_PREFIX));
128 private static final Eid EID_IPV4 = LispAddressUtil.toEid(IPV4_ADDRESS, null);
129 private static final Eid EID_IPV6 = LispAddressUtil.toEid(IPV6_ADDRESS, null);
130 private static final Eid EID_IPV4_PREFIX = LispAddressUtil.asIpv4PrefixEid(IPV4_STRING + MASK_2);
131 private static final Eid EID_IPV6_PREFIX = LispAddressUtil.asIpv6PrefixEid(IPV6_STRING + MASK_3);
132 private static final Eid EID_IPV4_PREFIX_BINARY = LispAddressUtil.asIpv4PrefixBinaryEid(IPV4_STRING + MASK_2);
133 private static final Eid EID_IPV6_PREFIX_BINARY = LispAddressUtil.asIpv6PrefixBinaryEid(IPV6_STRING + MASK_3);
134 private static final Eid EID_INSTANCE_ID = new EidBuilder().setAddress(ADDRESS_INSTANCE_ID_IP).build();
135 private static final Eid EID_SOURCE_DEST_KEY = new EidBuilder().setAddress(ADDRESS_SOURCE_DEST_KEY).build();
136 private static final Eid EID_SERVICE_PATH = new EidBuilder().setAddress(ADDRESS_SERVICE_PATH).build();
137 private static final Eid EID_MAC = new EidBuilder().setAddress(ADDRESS_MAC).build();
140 * Tests {@link MaskUtil#isMaskable} method.
143 public void isMaskableTest() {
144 assertTrue(MaskUtil.isMaskable(ADDRESS_IPV4_PREFIX));
145 assertTrue(MaskUtil.isMaskable(ADDRESS_IPV6_PREFIX));
146 assertTrue(MaskUtil.isMaskable(ADDRESS_SOURCE_DEST_KEY));
147 assertTrue(MaskUtil.isMaskable(ADDRESS_INSTANCE_ID_IP_PREFIX));
148 assertFalse(MaskUtil.isMaskable(ADDRESS_INSTANCE_ID_IP));
149 assertFalse(MaskUtil.isMaskable(ADDRESS_MAC));
153 * Tests {@link MaskUtil#normalize(Eid eid, short mask)} method with Ipv4PrefixBinary.
156 public void normalizeTest_withIpv4PrefixBinary_withMask() throws UnknownHostException {
157 // input ip: 255.255.255.255, mask: 20
158 final Eid result = MaskUtil.normalize(EID_IPV4_PREFIX_BINARY, (short) 20);
159 final Ipv4PrefixBinary resultPrefix = (Ipv4PrefixBinary) result.getAddress();
162 assertArrayEquals(ipv4ExpectedByteAddress, resultPrefix.getIpv4AddressBinary().getValue());
163 assertEquals((short) 20, (short) resultPrefix.getIpv4MaskLength());
167 * Tests {@link MaskUtil#normalize(Eid eid, short mask)} method with Ipv6PrefixBinary.
170 public void normalizeTest_withIpv6PrefixBinary_withMask() throws UnknownHostException {
171 // input ip: 1111:2222:3333:4444:5555:6666:7777:8888, mask: 66
172 final Eid result = MaskUtil.normalize(EID_IPV6_PREFIX_BINARY, (short) 66);
173 final Ipv6PrefixBinary resultPrefix = (Ipv6PrefixBinary) result.getAddress();
176 assertArrayEquals(ipv6ExpectedByteAddress, resultPrefix.getIpv6AddressBinary().getValue());
177 assertEquals((short) 66, (short) resultPrefix.getIpv6MaskLength());
181 * Tests {@link MaskUtil#normalize(Eid eid, short mask)} method with Ipv4Prefix.
184 public void normalizeTest_withIpv4Prefix_withMask() {
185 // input ip: 255.255.255.255, mask: 20
186 final Eid result = MaskUtil.normalize(EID_IPV4_PREFIX, (short) 20);
187 final org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
188 .address.Ipv4Prefix resultPrefix = (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp
189 .address.types.rev151105.lisp.address.address.Ipv4Prefix) result.getAddress();
192 final String expectedResult = "255.255.240.0" + MASK_2;
193 assertEquals(expectedResult, resultPrefix.getIpv4Prefix().getValue());
197 * Tests {@link MaskUtil#normalize(Eid eid, short mask)} method with Ipv6Prefix.
200 public void normalizeTest_withIpv6Prefix_withMask() {
201 // input ip: 1111:2222:3333:4444:5555:6666:7777:8888, mask: 66
202 final Eid result = MaskUtil.normalize(EID_IPV6_PREFIX, (short) 66);
203 final org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
204 .address.Ipv6Prefix resultPrefix = (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp
205 .address.types.rev151105.lisp.address.address.Ipv6Prefix) result.getAddress();
208 final String expectedResult = "1111:2222:3333:4444:4000::" + MASK_3;
209 assertEquals(expectedResult, resultPrefix.getIpv6Prefix().getValue());
213 * Tests {@link MaskUtil#normalize(Eid eid, short mask)} method with InstanceId.
216 public void normalizeTest_withInstanceId_withMask() {
217 //TODO finish this test when implementation is done
218 assertEquals(EID_INSTANCE_ID, MaskUtil.normalize(EID_INSTANCE_ID, (short) 0));
222 * Tests {@link MaskUtil#normalize(Eid eid, short mask)} method with Mac.
225 public void normalizeTest_withMac_withMask() {
226 assertEquals(EID_MAC, MaskUtil.normalize(EID_MAC, (short) 0));
230 * Tests {@link MaskUtil#normalize(Eid eid)} method with Ipv4PrefixBinary.
233 public void normalizeTest_withIpv4PrefixBinary() throws UnknownHostException {
234 // input ip: 255.255.255.255, mask: 20
235 final Eid result = MaskUtil.normalize(EID_IPV4_PREFIX_BINARY);
236 final Ipv4PrefixBinary resultPrefix = (Ipv4PrefixBinary) result.getAddress();
239 final byte[] expectedResult = Inet4Address.getByName("255.255.240.0").getAddress();
240 assertArrayEquals(expectedResult, resultPrefix.getIpv4AddressBinary().getValue());
241 assertEquals((short) 20, (short) resultPrefix.getIpv4MaskLength());
245 * Tests {@link MaskUtil#normalize(Eid eid)} method with Ipv6PrefixBinary.
248 public void normalizeTest_withIpv6PrefixBinary() throws UnknownHostException {
249 // input ip: 1111:2222:3333:4444:5555:6666:7777:8888, mask: 66
250 final Eid result = MaskUtil.normalize(EID_IPV6_PREFIX_BINARY);
251 final Ipv6PrefixBinary resultPrefix = (Ipv6PrefixBinary) result.getAddress();
254 final byte[] expectedResult = Inet6Address.getByName("1111:2222:3333:4444:4000::").getAddress();
255 assertArrayEquals(expectedResult, resultPrefix.getIpv6AddressBinary().getValue());
256 assertEquals((short) 66, (short) resultPrefix.getIpv6MaskLength());
260 * Tests {@link MaskUtil#normalize} method with Ipv4Prefix.
263 public void normalizeTest_withIpv4Prefix() {
264 // input ip: 255.255.255.255, mask: 20
265 final Eid result = MaskUtil.normalize(EID_IPV4_PREFIX);
266 final org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
267 .address.Ipv4Prefix resultPrefix = (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp
268 .address.types.rev151105.lisp.address.address.Ipv4Prefix) result.getAddress();
271 final String expectedResult = "255.255.240.0" + MASK_2;
272 assertEquals(expectedResult, resultPrefix.getIpv4Prefix().getValue());
276 * Tests {@link MaskUtil#normalize} method with Ipv6Prefix.
279 public void normalizeTest_withIpv6Prefix() {
280 // input ip: 1111:2222:3333:4444:5555:6666:7777:8888, mask: 66
281 final Eid result = MaskUtil.normalize(EID_IPV6_PREFIX);
282 final org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
283 .address.Ipv6Prefix resultPrefix = (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp
284 .address.types.rev151105.lisp.address.address.Ipv6Prefix) result.getAddress();
287 final String expectedResult = "1111:2222:3333:4444:4000::" + MASK_3;
288 assertEquals(expectedResult, resultPrefix.getIpv6Prefix().getValue());
292 * Tests {@link MaskUtil#normalize} method with Ipv4.
295 public void normalizeTest_withIpv4() {
297 final Eid result = MaskUtil.normalize(EID_IPV4);
298 final org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
299 .address.Ipv4Prefix resultPrefix = (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp
300 .address.types.rev151105.lisp.address.address.Ipv4Prefix) result.getAddress();
303 final String expectedResult = "1.2.3.0" + MASK_1;
304 assertEquals(expectedResult, resultPrefix.getIpv4Prefix().getValue());
308 * Tests {@link MaskUtil#normalize} method with Ipv6.
311 public void normalizeTest_withIpv6() {
312 // input ip: 1111:2222:3333:4444:5555:6666:7777:8888
313 final Eid result = MaskUtil.normalize(EID_IPV6);
314 final org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address
315 .address.Ipv6Prefix resultPrefix = (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp
316 .address.types.rev151105.lisp.address.address.Ipv6Prefix) result.getAddress();
319 final String expectedResult = "1111:2222:3333:4444:5555:6666:7777:8888" + MASK_4;
320 assertEquals(expectedResult, resultPrefix.getIpv6Prefix().getValue());
324 * Tests {@link MaskUtil#normalize} method with InstanceId.
327 public void normalizeTest_withInstanceId() {
328 //TODO finish this test when implementation is done
329 assertEquals(EID_INSTANCE_ID, MaskUtil.normalize(EID_INSTANCE_ID));
333 * Tests {@link MaskUtil#normalize} method with SourceDestKey.
336 public void normalizeTest_withSourceDestKey() {
338 final String expectedSourceAddress = "1.2.0.0" + MASK_2;
339 final String expectedDestAddress = "1.3.4.0";
341 final Eid resultEid = MaskUtil.normalize(EID_SOURCE_DEST_KEY);
342 final SourceDestKey resultAddr = (SourceDestKey) resultEid.getAddress();
343 final String resultSource = resultAddr.getSourceDestKey().getSource().getIpPrefix().getIpv4Prefix().getValue();
344 final String resultDest = resultAddr.getSourceDestKey().getDest().getIpAddress().getIpv4Address().getValue();
346 assertEquals(expectedSourceAddress, resultSource);
347 assertEquals(expectedDestAddress, resultDest);
351 * Tests {@link MaskUtil#normalize} method with ServicePath.
354 public void normalizeTest_withServicePath() {
356 final Eid expectedResult = LispAddressUtil.asServicePathEid(-1, 1L, (short)0);
359 final Eid result = MaskUtil.normalize(EID_SERVICE_PATH);
360 assertEquals(expectedResult, result);
364 * Tests {@link MaskUtil#normalize} method with non-maskable address type.
367 public void normalizeTest_withNonMaskableAddress() {
368 assertEquals(EID_MAC, MaskUtil.normalize(EID_MAC));
372 * Tests {@link MaskUtil#getMaxMask} method.
375 public void getMaxMaskTest() {
376 assertEquals(32, MaskUtil.getMaxMask(ADDRESS_IPV4));
377 assertEquals(32, MaskUtil.getMaxMask(ADDRESS_IPV4_PREFIX));
378 assertEquals(128, MaskUtil.getMaxMask(ADDRESS_IPV6));
379 assertEquals(128, MaskUtil.getMaxMask(ADDRESS_IPV6_PREFIX));
380 assertEquals(-1, MaskUtil.getMaxMask(ADDRESS_MAC));
384 * Tests {@link MaskUtil#getMaskForAddress} method.
387 public void getMaskForAddressTest() {
389 assertEquals(-1, MaskUtil.getMaskForAddress(SIMPLE_ADDRESS_IPV4));
390 assertEquals((short) 32, MaskUtil.getMaskForAddress(SIMPLE_ADDRESS_IPV4_PREFIX));
391 assertEquals((short) 128, MaskUtil.getMaskForAddress(SIMPLE_ADDRESS_IPV6_PREFIX));
394 assertEquals((short) 32, MaskUtil.getMaskForAddress(ADDRESS_IPV4));
395 assertEquals((short) 128, MaskUtil.getMaskForAddress(ADDRESS_IPV6));
396 assertEquals((short) 32, MaskUtil.getMaskForAddress(ADDRESS_IPV4_BINARY));
397 assertEquals((short) 128, MaskUtil.getMaskForAddress(ADDRESS_IPV6_BINARY));
398 assertEquals((short) 32, MaskUtil.getMaskForAddress(ADDRESS_IPV4_PREFIX));
399 assertEquals((short) 128, MaskUtil.getMaskForAddress(ADDRESS_IPV6_PREFIX));
400 assertEquals((short) 32, MaskUtil.getMaskForAddress(ADDRESS_INSTANCE_ID_IP_PREFIX));
401 assertEquals((short) 32, MaskUtil.getMaskForAddress(IPV4_PREFIX_BINARY));
402 assertEquals((short) 128, MaskUtil.getMaskForAddress(IPV6_PREFIX_BINARY));
403 assertEquals((short) -1, MaskUtil.getMaskForAddress(ADDRESS_MAC));
407 * Tests {@link MaskUtil#getAddressStringForIpPrefix} method.
410 public void getAddressStringForIpPrefixTest() {
411 assertEquals(IPV4_STRING_1, MaskUtil.getAddressStringForIpPrefix(new IpPrefix(IPV4_PREFIX)));
415 * Tests {@link MaskUtil#getAddressStringForIpv4Prefix} method.
418 public void getAddressStringForIpv4PrefixTest() {
419 assertEquals(IPV4_STRING_1, MaskUtil
420 .getAddressStringForIpv4Prefix(new Ipv4PrefixBuilder().setIpv4Prefix(IPV4_PREFIX).build()));
424 * Tests {@link MaskUtil#getAddressStringForIpv6Prefix} method.
427 public void getAddressStringForIpv6PrefixTest() {
428 assertEquals(IPV6_STRING, MaskUtil
429 .getAddressStringForIpv6Prefix(new Ipv6PrefixBuilder().setIpv6Prefix(IPV6_PREFIX).build()));
432 private static SourceDestKeyBuilder getDefaultSourceDestKeyAddressBuilder() {
433 return new SourceDestKeyBuilder()
434 .setSourceDestKey(new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp
435 .address.types.rev151105.lisp.address.address.source.dest.key.SourceDestKeyBuilder()
436 .setSource(new SimpleAddress(new IpPrefix(new Ipv4Prefix(IPV4_STRING_1 + MASK_2))))
437 .setDest(new SimpleAddress(new IpAddress(new Ipv4Address(IPV4_STRING_2)))).build());
440 private static InstanceId getDefaultIpPrefixInstanceId() {
441 return new InstanceIdBuilder()
442 .setInstanceId(new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types
443 .rev151105.lisp.address.address.instance.id.InstanceIdBuilder()
444 .setIid(new InstanceIdType(1L))
445 .setAddress(new SimpleAddress(new IpPrefix(IPV4_PREFIX)))
446 .setMaskLength((short) 32).build())
450 private static InstanceId getDefaultIpInstanceId() {
451 return new InstanceIdBuilder()
452 .setInstanceId(new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types
453 .rev151105.lisp.address.address.instance.id.InstanceIdBuilder()
454 .setIid(new InstanceIdType(1L))
455 .setAddress(new SimpleAddress(new IpAddress(new Ipv4Address(IPV4_STRING_1)))).build())
459 private static ServicePath getDefaultServicePath() {
460 org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address.address
461 .service.path.ServicePathBuilder servicePathBuilder = new org.opendaylight.yang.gen.v1.urn.ietf.params
462 .xml.ns.yang.ietf.lisp.address.types.rev151105.lisp.address.address.service.path.ServicePathBuilder();
464 return new ServicePathBuilder().setServicePath(servicePathBuilder
465 .setServiceIndex((short) 1)
466 .setServicePathId(new ServicePathIdType(1L)).build())