0f83a516c885ce3b560a84085c2788a656e15b67
[mdsal.git] / model / ietf / rfc6991-ietf-inet-types / src / test / java / org / opendaylight / yang / gen / v1 / urn / ietf / params / xml / ns / yang / ietf / inet / types / rev130715 / IpAddressBuilderTest.java
1 /*
2  * Copyright (c) 2016 Cisco Systems, Inc. and others.  All rights reserved.
3  *
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
7  */
8 package org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715;
9
10 import static org.junit.Assert.assertEquals;
11 import static org.junit.Assert.assertFalse;
12 import static org.junit.Assert.assertNotNull;
13
14 import java.lang.reflect.Constructor;
15 import org.junit.Test;
16
17 public class IpAddressBuilderTest {
18
19     @Test
20     public void testGetDefaultInstance() throws Exception {
21         final Constructor<IpAddressBuilder> constructor = IpAddressBuilder.class.getDeclaredConstructor();
22         assertFalse(constructor.isAccessible());
23         constructor.setAccessible(true);
24         final IpAddressBuilder newInstance = constructor.newInstance();
25         assertNotNull(newInstance);
26
27         testIpv4("1.1.1.1");
28         testIpv4("192.168.155.100");
29         testIpv4("1.192.1.221");
30         testIpv6("ABCD:EF01:2345:6789:ABCD:EF01:2345:6789");
31         testIpv6("2001:DB8:0:0:8:800:200C:417A");
32         testIpv6("0:0:0:0:0:0:0:0");
33         testIpv6("::1.2.3.4");
34         testIpv6("ABCD:EF01:2345:6789:ABCD:EF01:2345:6789");
35         testIpv6("2001:DB8:0:0:8:800:200C:417A");
36         testIpv6("2001:DB8::8:800:200C:417A");
37         testIpv6("FF01:0:0:0:0:0:0:101");
38         testIpv6("FF01::101");
39         testIpv6("0:0:0:0:0:0:0:1");
40         testIpv6("::1");
41         testIpv6("::");
42     }
43
44     @Test(expected = IllegalArgumentException.class)
45     public void testIllegalArgumentException1() {
46         IpAddressBuilder.getDefaultInstance("badIp");
47     }
48
49     @Test(expected = IllegalArgumentException.class)
50     public void testIllegalArgumentException2() {
51         IpAddressBuilder.getDefaultInstance("2001:0DB8::CD3/60");
52     }
53
54     private static void testIpv4(final String ip) {
55         final IpAddress defaultInstance = IpAddressBuilder.getDefaultInstance(ip);
56         assertEquals(new IpAddress(new Ipv4Address(ip)), defaultInstance);
57     }
58
59     private static void testIpv6(final String ip) {
60         final IpAddress defaultInstance = IpAddressBuilder.getDefaultInstance(ip);
61         assertEquals(new IpAddress(new Ipv6Address(ip)), defaultInstance);
62     }
63 }