2 * Copyright (c) 2013 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
9 package org.opendaylight.controller.switchmanager;
11 import java.net.Inet6Address;
12 import java.net.InetAddress;
13 import java.util.HashSet;
16 import org.junit.Assert;
17 import org.junit.Test;
18 import org.opendaylight.controller.sal.utils.NodeCreator;
19 import org.opendaylight.controller.sal.core.Node;
20 import org.opendaylight.controller.sal.core.NodeConnector;
21 import org.opendaylight.controller.sal.utils.NodeConnectorCreator;
23 public class SubnetTest {
26 public void testSubnet() throws Exception {
27 InetAddress ipaddr = InetAddress.getByName("100.0.0.1");
28 Subnet subnet = new Subnet(ipaddr, (short) 24, (short) 5);
29 Assert.assertTrue(subnet.equals(subnet));
30 Assert.assertFalse(subnet.equals(null));
31 Assert.assertFalse(subnet.equals(ipaddr));
32 Subnet subnet2 = new Subnet(ipaddr, (short) 24, (short) 5);
33 Inet6Address ipv6 = (Inet6Address) Inet6Address
34 .getByName("1111::2222:3333:4444:5555:6666");
35 Subnet subnet3 = new Subnet(ipv6, (short) 24, (short) 5);
36 Assert.assertTrue(subnet.equals(subnet2));
37 Assert.assertFalse(subnet.isMutualExclusive(subnet2));
38 Assert.assertTrue(subnet.isMutualExclusive(subnet3));
39 InetAddress subnetAddr = InetAddress.getByName("200.0.0.100");
41 Assert.assertTrue(subnet.isFlatLayer2() == true);
43 Set<NodeConnector> ncSet = new HashSet<NodeConnector>();
44 Node node = NodeCreator.createOFNode(((long) 10));
45 NodeConnector nc0 = NodeConnectorCreator.createOFNodeConnector(
47 NodeConnector nc1 = NodeConnectorCreator.createOFNodeConnector(
49 NodeConnector nc2 = NodeConnectorCreator.createOFNodeConnector(
56 Assert.assertTrue(subnet.hasNodeConnector(nc0));
57 Assert.assertFalse(subnet.hasNodeConnector(null));
58 subnet.addNodeConnectors(ncSet);
59 Assert.assertTrue(subnet.hasNodeConnector(nc0));
61 Set<NodeConnector> resultncSet = subnet.getNodeConnectors();
62 Assert.assertEquals(resultncSet, ncSet);
63 subnet.addNodeConnectors(null);
64 Assert.assertEquals(subnet.getNodeConnectors(), ncSet);
66 subnet.deleteNodeConnectors(null);
67 Assert.assertEquals(subnet.getNodeConnectors(), ncSet);
69 Set<NodeConnector> ncSet2 = new HashSet<NodeConnector>();
71 subnet.deleteNodeConnectors(ncSet2);
72 Assert.assertFalse(subnet.getNodeConnectors().contains(nc0));
73 Assert.assertFalse(subnet.hasNodeConnector(nc0));
74 Assert.assertTrue(subnet.getNodeConnectors().contains(nc1));
75 Assert.assertTrue(subnet.getNodeConnectors().contains(nc2));
77 subnet.deleteNodeConnectors(ncSet2);
79 subnet.setNetworkAddress(subnetAddr);
80 Assert.assertTrue(subnet.isMutualExclusive(subnet2));
81 Assert.assertTrue(subnet.getNetworkAddress().equals(subnetAddr));
83 subnet.setSubnetMaskLength((short) 16);
84 Assert.assertTrue(subnet.getSubnetMaskLength() == 16);
86 subnet.setVlan((short) 100);
87 Assert.assertTrue(subnet.getVlan() == 100);
89 Assert.assertTrue(subnet.isFlatLayer2() == false);