-
/*
* Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
*
package org.opendaylight.controller.switchmanager;
+import java.net.Inet6Address;
import java.net.InetAddress;
import java.util.HashSet;
import java.util.Set;
import org.opendaylight.controller.sal.core.NodeConnector;
import org.opendaylight.controller.sal.utils.NodeConnectorCreator;
-
public class SubnetTest {
-
- @Test
- public void testSubnet() throws Exception {
- InetAddress ipaddr = InetAddress.getByName("100.0.0.1");
- Subnet subnet = new Subnet(ipaddr, (short)24, (short)5);
- InetAddress subnetAddr = InetAddress.getByName("100.0.0.100");
-
- Assert.assertTrue(subnet.isFlatLayer2() == true);
-
- Set<NodeConnector> ncSet = new HashSet<NodeConnector>();
- Node node = NodeCreator.createOFNode(((long)10));
- NodeConnector nc0 = NodeConnectorCreator.createOFNodeConnector((short)20, node);
- NodeConnector nc1 = NodeConnectorCreator.createOFNodeConnector((short)30, node);
- NodeConnector nc2 = NodeConnectorCreator.createOFNodeConnector((short)40, node);
-
- ncSet.add(nc0);
- ncSet.add(nc1);
- ncSet.add(nc2);
-
- subnet.addNodeConnectors(ncSet);
-
- Set<NodeConnector> resultncSet = subnet.getNodeConnectors();
- Assert.assertEquals(resultncSet, ncSet);
-
- subnet.setNetworkAddress(subnetAddr);
- Assert.assertTrue(subnet.getNetworkAddress().equals(subnetAddr));
-
- subnet.setSubnetMaskLength((short) 16);
- Assert.assertTrue(subnet.getSubnetMaskLength() == 16);
-
- subnet.setVlan((short)100);
- Assert.assertTrue(subnet.getVlan() == 100);
-
- Assert.assertTrue(subnet.isFlatLayer2() == false);
-
- }
+
+ @Test
+ public void testSubnet() throws Exception {
+ InetAddress ipaddr = InetAddress.getByName("100.0.0.1");
+ Subnet subnet = new Subnet(ipaddr, (short) 24, (short) 5);
+ Assert.assertTrue(subnet.equals(subnet));
+ Assert.assertFalse(subnet.equals(null));
+ Assert.assertFalse(subnet.equals(ipaddr));
+ Subnet subnet2 = new Subnet(ipaddr, (short) 24, (short) 5);
+ Inet6Address ipv6 = (Inet6Address) Inet6Address
+ .getByName("1111::2222:3333:4444:5555:6666");
+ Subnet subnet3 = new Subnet(ipv6, (short) 24, (short) 5);
+ Assert.assertTrue(subnet.equals(subnet2));
+ Assert.assertFalse(subnet.isMutualExclusive(subnet2));
+ Assert.assertTrue(subnet.isMutualExclusive(subnet3));
+ InetAddress subnetAddr = InetAddress.getByName("200.0.0.100");
+
+ Assert.assertTrue(subnet.isFlatLayer2() == true);
+
+ Set<NodeConnector> ncSet = new HashSet<NodeConnector>();
+ Node node = NodeCreator.createOFNode(((long) 10));
+ NodeConnector nc0 = NodeConnectorCreator.createOFNodeConnector(
+ (short) 20, node);
+ NodeConnector nc1 = NodeConnectorCreator.createOFNodeConnector(
+ (short) 30, node);
+ NodeConnector nc2 = NodeConnectorCreator.createOFNodeConnector(
+ (short) 40, node);
+
+ ncSet.add(nc0);
+ ncSet.add(nc1);
+ ncSet.add(nc2);
+
+ Assert.assertTrue(subnet.hasNodeConnector(nc0));
+ Assert.assertFalse(subnet.hasNodeConnector(null));
+ subnet.addNodeConnectors(ncSet);
+ Assert.assertTrue(subnet.hasNodeConnector(nc0));
+
+ Set<NodeConnector> resultncSet = subnet.getNodeConnectors();
+ Assert.assertEquals(resultncSet, ncSet);
+ subnet.addNodeConnectors(null);
+ Assert.assertEquals(subnet.getNodeConnectors(), ncSet);
+
+ subnet.deleteNodeConnectors(null);
+ Assert.assertEquals(subnet.getNodeConnectors(), ncSet);
+
+ Set<NodeConnector> ncSet2 = new HashSet<NodeConnector>();
+ ncSet2.add(nc0);
+ subnet.deleteNodeConnectors(ncSet2);
+ Assert.assertFalse(subnet.getNodeConnectors().contains(nc0));
+ Assert.assertFalse(subnet.hasNodeConnector(nc0));
+ Assert.assertTrue(subnet.getNodeConnectors().contains(nc1));
+ Assert.assertTrue(subnet.getNodeConnectors().contains(nc2));
+
+ subnet.deleteNodeConnectors(ncSet2);
+
+ subnet.setNetworkAddress(subnetAddr);
+ Assert.assertTrue(subnet.isMutualExclusive(subnet2));
+ Assert.assertTrue(subnet.getNetworkAddress().equals(subnetAddr));
+
+ subnet.setSubnetMaskLength((short) 16);
+ Assert.assertTrue(subnet.getSubnetMaskLength() == 16);
+
+ subnet.setVlan((short) 100);
+ Assert.assertTrue(subnet.getVlan() == 100);
+
+ Assert.assertTrue(subnet.isFlatLayer2() == false);
+
+ }
}