Added scaffolding for tests and example functions 81/32881/7
authorgrmontpetit <grmontpetit@inocybe.com>
Sat, 16 Jan 2016 22:59:32 +0000 (17:59 -0500)
committerGabriel Robitaille-Montpetit <grmontpetit@inocybe.com>
Wed, 20 Jan 2016 19:59:12 +0000 (14:59 -0500)
Change-Id: I80272c402e82cfcce942502c4759a56b12bb07e9
Signed-off-by: grmontpetit <grmontpetit@inocybe.com>
impl/src/main/java/org/opendaylight/unimgr/impl/UnimgrUtils.java
impl/src/test/java/org/opendaylight/unimgr/impl/UnimgrMapperTest.java [new file with mode: 0644]
impl/src/test/java/org/opendaylight/unimgr/impl/UnimgrUtilsTest.java [new file with mode: 0644]

index 99c9ed2c451e7a4a5332624fb380deb58e377396..3e8734d93fbf6400bed0acd0eb80c99d749ad762 100644 (file)
@@ -381,10 +381,10 @@ public class UnimgrUtils {
             InstanceIdentifier<Node> uniNodeIid = UnimgrMapper.getUniNodeIid(uniNodeId);
             NodeKey uniNodeKey = new NodeKey(uniNodeId);
             Node nodeData = new NodeBuilder()
-                                .setNodeId(uniNodeId)
-                                .setKey(uniNodeKey)
-                                .addAugmentation(UniAugmentation.class, uni)
-                                .build();
+                                    .setNodeId(uniNodeId)
+                                    .setKey(uniNodeKey)
+                                    .addAugmentation(UniAugmentation.class, uni)
+                                    .build();
             WriteTransaction transaction = dataBroker.newWriteOnlyTransaction();
             transaction.put(LogicalDatastoreType.CONFIGURATION, uniNodeIid, nodeData);
             CheckedFuture<Void, TransactionCommitFailedException> future = transaction.submit();
diff --git a/impl/src/test/java/org/opendaylight/unimgr/impl/UnimgrMapperTest.java b/impl/src/test/java/org/opendaylight/unimgr/impl/UnimgrMapperTest.java
new file mode 100644 (file)
index 0000000..6411ca4
--- /dev/null
@@ -0,0 +1,83 @@
+package org.opendaylight.unimgr.impl;
+
+import org.junit.Before;
+import org.junit.Test;
+
+public class UnimgrMapperTest {
+
+    @Before
+    public void setUp() throws Exception {
+    }
+
+    @Test
+    public void testCreateOvsdbBridgeNodeIid() {
+      //TODO
+    }
+
+    @Test
+    public void testGetEvcLinkIid() {
+      //TODO
+    }
+
+    @Test
+    public void testGetEvcTopologyIid() {
+      //TODO
+    }
+
+    @Test
+    public void testGetEvcTopologyNodeIid() {
+      //TODO
+    }
+
+    @Test
+    public void testGetOvsdbBridgeNodeIid() {
+      //TODO
+    }
+
+    /*
+     *  This test for 2 functions with the
+     *  same name that take different parameters.
+     */
+    @Test
+    public void testGetOvsdbNodeIid() {
+      //TODO
+    }
+
+    @Test
+    public void testGetOvsdbTopologyIid() {
+      //TODO
+    }
+
+    /*
+     *  This test for 2 functions with the
+     *  same name that take different parameters.
+     */
+    @Test
+    public void testGetTerminationPointIid() {
+      //TODO
+    }
+
+    /*
+     *  This test for 2 functions with the
+     *  same name that take different parameters.
+     */
+    @Test
+    public void testGetUniIid() {
+      //TODO
+    }
+
+    @Test
+    public void testGetUniTopologyIid() {
+      //TODO
+    }
+
+    @Test
+    public void testGetUniTopologyNodeIid() {
+      //TODO
+    }
+
+    @Test
+    public void testGetUniNodeIid() {
+      //TODO
+    }
+}
diff --git a/impl/src/test/java/org/opendaylight/unimgr/impl/UnimgrUtilsTest.java b/impl/src/test/java/org/opendaylight/unimgr/impl/UnimgrUtilsTest.java
new file mode 100644 (file)
index 0000000..0038e81
--- /dev/null
@@ -0,0 +1,432 @@
+package org.opendaylight.unimgr.impl;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+import static org.mockito.Matchers.any;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
+import static org.mockito.Mockito.when;
+import static org.mockito.Mockito.times;
+
+import org.mockito.Mockito;
+
+import org.powermock.core.classloader.annotations.PrepareForTest;
+import org.powermock.modules.junit4.PowerMockRunner;
+
+import com.google.common.collect.ImmutableBiMap;
+import com.google.common.util.concurrent.CheckedFuture;
+
+import org.powermock.api.mockito.PowerMockito;
+import org.powermock.api.support.membermodification.MemberMatcher;
+import org.powermock.api.support.membermodification.MemberModifier;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.UUID;
+
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.rules.ExpectedException;
+import org.junit.runner.RunWith;
+import org.opendaylight.controller.md.sal.binding.api.DataBroker;
+import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
+import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
+import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
+import org.opendaylight.ovsdb.southbound.SouthboundConstants;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.IpAddress;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Ipv4Address;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.PortNumber;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Uri;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.l2.types.rev130827.VlanId;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeAugmentation;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeAugmentationBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeName;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbBridgeProtocolBase;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbNodeAugmentation;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbNodeAugmentationBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbNodeRef;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbTerminationPointAugmentation;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbTerminationPointAugmentationBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.OvsdbPortInterfaceAttributes.VlanMode;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.bridge.attributes.ControllerEntry;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.bridge.attributes.ControllerEntryBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.bridge.attributes.ProtocolEntry;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.bridge.attributes.ProtocolEntryBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.ConnectionInfo;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.ovsdb.rev150105.ovsdb.node.attributes.ConnectionInfoBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.unimgr.rev151012.EvcAugmentation;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.unimgr.rev151012.Uni;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.unimgr.rev151012.UniAugmentation;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.unimgr.rev151012.UniAugmentationBuilder;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NodeId;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.NodeBuilder;
+import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.node.TerminationPoint;
+import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+
+
+@RunWith(PowerMockRunner.class)
+@PrepareForTest({InstanceIdentifier.class, LogicalDatastoreType.class, UnimgrMapper.class, UnimgrUtils.class, UUID.class})
+public class UnimgrUtilsTest {
+
+    @Rule
+    public final ExpectedException exception = ExpectedException.none();
+
+    @Before
+    public void setUp() throws Exception {
+        PowerMockito.mockStatic(UnimgrUtils.class, Mockito.CALLS_REAL_METHODS);
+        PowerMockito.mockStatic(UnimgrMapper.class, Mockito.CALLS_REAL_METHODS);
+        PowerMockito.mockStatic(InstanceIdentifier.class);
+        PowerMockito.mockStatic(LogicalDatastoreType.class);
+        PowerMockito.mockStatic(UUID.class);
+    }
+
+    /*
+     *  This test for 2 functions with the
+     *  same name that take different parameters.
+     */
+    @Test
+    public void testCreateBridgeNode() throws Exception {
+        // TODO
+    }
+
+    @Test
+    public void testCreateControllerEntries() {
+        String targetString = new String("controllerEntry");
+        List<ControllerEntry> controllerEntries = new ArrayList<ControllerEntry>();
+        ControllerEntryBuilder controllerEntryBuilder = new ControllerEntryBuilder();
+        controllerEntryBuilder.setTarget(new Uri(targetString));
+        controllerEntries.add(controllerEntryBuilder.build());
+        assertEquals(controllerEntries, UnimgrUtils.createControllerEntries(targetString));
+    }
+
+    @SuppressWarnings("unchecked")
+    @Test
+    public void testCreateGreTunnel() throws Exception {
+        DataBroker dataBroker = PowerMockito.mock(DataBroker.class);
+
+        UniAugmentation sourceUniAug = new UniAugmentationBuilder()
+                .setIpAddress(new IpAddress(new Ipv4Address("192.168.1.1")))
+                .build();
+        UniAugmentation destUniAug = new UniAugmentationBuilder()
+                .setIpAddress(new IpAddress(new Ipv4Address("192.168.1.2")))
+                .build();
+
+        Node bridgeNode = PowerMockito.mock(Node.class);
+        String bridgeName = PowerMockito.mock(String.class);
+        String portName = PowerMockito.mock(String.class);
+
+        WriteTransaction transaction = mock(WriteTransaction.class);
+        when(dataBroker.newWriteOnlyTransaction()).thenReturn(transaction);
+        doNothing().when(transaction).put(any(LogicalDatastoreType.class),
+                                          any(InstanceIdentifier.class),
+                                          any(TerminationPoint.class));
+        when(transaction.submit()).thenReturn(mock(CheckedFuture.class));
+
+        MemberModifier.suppress(MemberMatcher.method(UnimgrMapper.class, "getTerminationPointIid", Node.class, String.class));
+        MemberModifier.suppress(MemberMatcher.method(UnimgrUtils.class, "createMdsalProtocols"));
+
+        UnimgrUtils.createGreTunnel(dataBroker,
+                                    sourceUniAug,
+                                    destUniAug,
+                                    bridgeNode,
+                                    bridgeName,
+                                    portName);
+        verify(transaction).put(any(LogicalDatastoreType.class),
+                                any(InstanceIdentifier.class),
+                                any(TerminationPoint.class));
+        verify(transaction).submit();
+    }
+
+    @Test
+    public void testCreateMdsalProtocols() {
+        List<ProtocolEntry> protocolList = new ArrayList<ProtocolEntry>();
+        ImmutableBiMap<String, Class<? extends OvsdbBridgeProtocolBase>> mapper =
+                SouthboundConstants.OVSDB_PROTOCOL_MAP.inverse();
+        ProtocolEntry protoEntry = new ProtocolEntryBuilder().setProtocol((Class<? extends OvsdbBridgeProtocolBase>) mapper.get("OpenFlow13")).build();
+        protocolList.add(protoEntry);
+        assertEquals(protocolList, UnimgrUtils.createMdsalProtocols());
+    }
+
+    @Test
+    public void testCreateOvsdbBridgeAugmentation() throws Exception {
+        OvsdbNodeRef ovsdbNodeRef = new OvsdbNodeRef(PowerMockito.mock(InstanceIdentifier.class));
+        UniAugmentation uni = new UniAugmentationBuilder().setOvsdbNodeRef(ovsdbNodeRef).build();
+        UUID bridgeUuid = PowerMockito.mock(UUID.class);
+        PowerMockito.when(UUID.randomUUID()).thenReturn(bridgeUuid);
+        OvsdbBridgeAugmentation ovsdbNode = new OvsdbBridgeAugmentationBuilder()
+                                                    .setBridgeName(new OvsdbBridgeName(UnimgrConstants.DEFAULT_BRIDGE_NAME))
+                                                    .setManagedBy(ovsdbNodeRef)
+                                                    .setBridgeUuid(new Uuid(bridgeUuid.toString()))
+                                                    .build();
+        assertEquals(ovsdbNode, UnimgrUtils.createOvsdbBridgeAugmentation(uni));
+        // Force an exception
+        Uni ovsdbNodeRefNull = new UniAugmentationBuilder().setOvsdbNodeRef(null).build();
+        exception.expect(Exception.class);
+        UnimgrUtils.createOvsdbBridgeAugmentation(ovsdbNodeRefNull);
+    }
+
+    /*
+     *  This test for 2 functions with the
+     *  same name that take different parameters.
+     */
+    @SuppressWarnings("unchecked")
+    @Test
+    public void testCreateOvsdbNode() {
+        DataBroker dataBroker = PowerMockito.mock(DataBroker.class);
+        MemberModifier.suppress(MemberMatcher.method(UnimgrMapper.class, "getOvsdbNodeIid", IpAddress.class));
+        IpAddress mockIp = mock(IpAddress.class);
+        InstanceIdentifier<Node> ovsdbNodeIid = PowerMockito.mock(InstanceIdentifier.class);
+        PowerMockito.when(UnimgrMapper.getOvsdbNodeIid(mockIp)).thenReturn(ovsdbNodeIid);
+        WriteTransaction transaction = mock(WriteTransaction.class);
+        when(dataBroker.newWriteOnlyTransaction()).thenReturn(transaction);
+        NodeId ovsdbNodeId = new NodeId("abcde");
+        Uni uni = new UniAugmentationBuilder().setIpAddress(new IpAddress(new Ipv4Address("192.168.1.2"))).build();
+        // createOvsdbNode with NodeId and Uni
+        UnimgrUtils.createOvsdbNode(dataBroker, ovsdbNodeId, uni);
+        doNothing().when(transaction).put(any(LogicalDatastoreType.class),
+                                          any(InstanceIdentifier.class),
+                                          any(Node.class));
+        verify(transaction).put(any(LogicalDatastoreType.class),
+                                any(InstanceIdentifier.class),
+                                any(Node.class));
+        verify(transaction).submit();
+        // Test with a null uni
+        exception.expect(Exception.class);
+        UnimgrUtils.createOvsdbNode(dataBroker, ovsdbNodeId, null);
+        // createOvsdbNode with Uni
+        UniAugmentation uniAug = new UniAugmentationBuilder(uni).build();
+        UnimgrUtils.createOvsdbNode(dataBroker, uniAug);
+        MemberModifier.suppress(MemberMatcher.method(UnimgrMapper.class, "getOvsdbNodeIid", NodeId.class));
+        PowerMockito.when(UnimgrMapper.getOvsdbNodeIid(ovsdbNodeId)).thenReturn(ovsdbNodeIid);
+        doNothing().when(transaction).put(any(LogicalDatastoreType.class),
+                                          any(InstanceIdentifier.class),
+                                          any(Node.class));
+        verify(transaction).put(any(LogicalDatastoreType.class),
+                                any(InstanceIdentifier.class),
+                                any(Node.class));
+        verify(transaction).submit();
+        // try with a null uni
+        exception.expect(Exception.class);
+        UnimgrUtils.createOvsdbNode(dataBroker, null);
+    }
+
+    @Test
+    public void testCreateOvsdbNodeAugmentation() {
+        Uni uni = new UniAugmentationBuilder().setIpAddress(new IpAddress(new Ipv4Address("192.168.1.2"))).build();
+        ConnectionInfo connectionInfos = new ConnectionInfoBuilder()
+                .setRemoteIp(uni.getIpAddress())
+                .setRemotePort(new PortNumber(UnimgrConstants.OVSDB_PORT))
+                .build();
+        OvsdbNodeAugmentation ovsdbNode = new OvsdbNodeAugmentationBuilder()
+                .setConnectionInfo(connectionInfos).build();
+        assertEquals(ovsdbNode, UnimgrUtils.createOvsdbNodeAugmentation(uni));
+    }
+
+    @Test
+    public void testCreateOvsdbNodeId() {
+        IpAddress ipAddress = new IpAddress(new Ipv4Address("192.168.1.2"));
+        String nodeId = UnimgrConstants.OVSDB_PREFIX
+                + ipAddress.getIpv4Address().getValue().toString()
+                + ":"
+                + UnimgrConstants.OVSDB_PORT;
+        assertEquals(new NodeId(nodeId), UnimgrUtils.createOvsdbNodeId(ipAddress));
+    }
+
+    @Test
+    public void testCreateOvsdbTerminationPointAugmentation() {
+        Uni uni = new UniAugmentationBuilder().build();
+        VlanId vlanID = new VlanId(1);
+        OvsdbTerminationPointAugmentation terminationPoint = new OvsdbTerminationPointAugmentationBuilder()
+                                                                     .setName(UnimgrConstants.DEFAULT_INTERNAL_IFACE)
+                                                                     .setVlanTag(vlanID)
+                                                                     .setVlanMode(VlanMode.Access)
+                                                                     .build();
+        assertEquals(terminationPoint, UnimgrUtils.createOvsdbTerminationPointAugmentation(uni));
+    }
+
+    @Test
+    public void testCreateEvc() {
+        DataBroker dataBroker = mock(DataBroker.class);
+        EvcAugmentation evc = mock(EvcAugmentation.class);
+        assertEquals(false, UnimgrUtils.createEvc(dataBroker, evc));
+    }
+
+    @SuppressWarnings("unchecked")
+    @Test
+    public void testCreateUniNode() {
+        DataBroker dataBroker = PowerMockito.mock(DataBroker.class);
+        UniAugmentation uniAug = new UniAugmentationBuilder()
+                                        .setIpAddress(new IpAddress(new Ipv4Address("192.168.1.2")))
+                                        .build();
+        // false case
+        assertEquals(false, UnimgrUtils.createUniNode(dataBroker, uniAug));
+        MemberModifier.suppress(MemberMatcher.method(UnimgrMapper.class, "getUniNodeIid", NodeId.class));
+        InstanceIdentifier<Node> uniNodeIid = PowerMockito.mock(InstanceIdentifier.class);
+        PowerMockito.when(UnimgrMapper.getUniNodeIid(any(NodeId.class))).thenReturn(uniNodeIid);
+        WriteTransaction transaction = mock(WriteTransaction.class);
+        when(dataBroker.newWriteOnlyTransaction()).thenReturn(transaction);
+        UnimgrUtils.createUniNode(dataBroker, uniAug);
+        verify(transaction).put(any(LogicalDatastoreType.class),
+                                any(InstanceIdentifier.class),
+                                any(Node.class));
+        verify(transaction).submit();
+    }
+
+    @Test
+    public void testCreateUniNodeId() {
+        IpAddress ipAddress = new IpAddress(new Ipv4Address("192.168.1.2"));
+        NodeId nodeId = new NodeId(UnimgrConstants.UNI_PREFIX + ipAddress.getIpv4Address().getValue().toString());
+        assertEquals(nodeId, UnimgrUtils.createUniNodeId(ipAddress));
+    }
+
+    /*
+     *  This test for 2 functions with the
+     *  same name that take different parameters.
+     */
+    @SuppressWarnings("unchecked")
+    @Test
+    public void testCreateTerminationPointNode() {
+        DataBroker dataBroker = mock(DataBroker.class);
+        Uni uni = new UniAugmentationBuilder().build();
+        InstanceIdentifier<TerminationPoint> tpIid = PowerMockito.mock(InstanceIdentifier.class);
+        Node bridgeNode = new NodeBuilder().build();
+        String bridgeName = "br0";
+        String portName = "tp1";
+        String type = "gre";
+        WriteTransaction transaction = mock(WriteTransaction.class);
+        MemberModifier.suppress(MemberMatcher.method(UnimgrMapper.class,
+                                                     "getTerminationPointIid",
+                                                     Node.class,
+                                                     String.class));
+        PowerMockito.when(UnimgrMapper.getTerminationPointIid(any(Node.class),
+                                                              any(String.class))).thenReturn(tpIid);
+        when(dataBroker.newWriteOnlyTransaction()).thenReturn(transaction);
+        // Function 1
+        UnimgrUtils.createTerminationPointNode(dataBroker, uni, bridgeNode, bridgeName, portName, type);
+
+        //Function 2
+        doNothing().when(transaction).put(any(LogicalDatastoreType.class),
+                                          any(InstanceIdentifier.class),
+                                          any(TerminationPoint.class));
+        UnimgrUtils.createTerminationPointNode(dataBroker, uni, bridgeNode, bridgeName, portName);
+        verify(transaction, times(2)).put(any(LogicalDatastoreType.class),
+                                          any(InstanceIdentifier.class),
+                                          any(TerminationPoint.class));
+        verify(transaction,times(2)).submit();
+    }
+
+    @Test
+    public void testDelete() {
+        // FIXME this function will be moved into an MdsalUtils class.
+        // see bug: https://bugs.opendaylight.org/show_bug.cgi?id=5035
+    }
+
+    @Test
+    public void testDeleteTerminationPoint() {
+      //TODO
+    }
+
+    @Test
+    public void testDeleteNode() {
+      //TODO
+    }
+
+    @Test
+    public void testExtract() {
+        // FIXME this function will be moved into an MdsalUtils class.
+        // see bug: https://bugs.opendaylight.org/show_bug.cgi?id=5035
+    }
+
+    @Test
+    public void testExtractOriginal() {
+      //TODO
+    }
+
+    @Test
+    public void testExtractRemoved() {
+      //TODO
+    }
+
+    @Test
+    public void testFindOvsdbNode() {
+      //TODO
+    }
+
+    @Test
+    public void testFindUniNode() {
+      //TODO
+    }
+
+    @Test
+    public void testGetConnectionInfo() {
+      //TODO
+    }
+
+    @Test
+    public void testGetEvcLinks() {
+      //TODO
+    }
+
+    @Test
+    public void testGetLocalIp() {
+      //TODO
+    }
+
+    @Test
+    public void testGetOvsdbNodes() {
+      //TODO
+    }
+
+    /*
+     *  This test for 2 functions with the
+     *  same name that take different parameters.
+     */
+    @Test
+    public void testGetUniNodes() {
+      //TODO
+    }
+
+    @Test
+    public void testGetUnis() {
+      //TODO
+    }
+
+    @Test
+    public void testGetUni() {
+      //TODO
+    }
+
+    @Test
+    public void testRead() {
+      //TODO
+    }
+
+    @Test
+    public void testReadLink() {
+      //TODO
+    }
+
+    @Test
+    public void testReadNode() {
+      //TODO
+    }
+
+    /*
+     *  This test for 2 functions with the
+     *  same name that take different parameters.
+     */
+    @Test
+    public void testUpdateUniNode() {
+      //TODO
+    }
+
+    @Test
+    public void testUpdateEvcNode() {
+      //TODO
+    }
+
+}