X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=common%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Fcommon%2Fmapping%2FMappingUtilsImplTest.java;h=522f20bb568cd740455d3e9b4c49daf25975fd7e;hb=67763b4d82e44c68fdbc765cdeec5496ff65b01e;hp=7aac85bae5421654574686e92d5b3ef2361b29ee;hpb=68d00560b21cafc8c1438bdbcde09eeb477c436f;p=transportpce.git diff --git a/common/src/test/java/org/opendaylight/transportpce/common/mapping/MappingUtilsImplTest.java b/common/src/test/java/org/opendaylight/transportpce/common/mapping/MappingUtilsImplTest.java index 7aac85bae..522f20bb5 100644 --- a/common/src/test/java/org/opendaylight/transportpce/common/mapping/MappingUtilsImplTest.java +++ b/common/src/test/java/org/opendaylight/transportpce/common/mapping/MappingUtilsImplTest.java @@ -9,64 +9,74 @@ package org.opendaylight.transportpce.common.mapping; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.io.IOException; +import java.io.Reader; +import java.nio.charset.StandardCharsets; import java.util.concurrent.ExecutionException; -import org.junit.Before; +import org.junit.BeforeClass; import org.junit.Test; -import org.opendaylight.mdsal.binding.api.DataBroker; import org.opendaylight.mdsal.binding.api.WriteTransaction; import org.opendaylight.mdsal.common.api.LogicalDatastoreType; -import org.opendaylight.transportpce.common.DataStoreContext; -import org.opendaylight.transportpce.common.DataStoreContextImpl; import org.opendaylight.transportpce.common.StringConstants; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.Network; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.network.Nodes; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.network.NodesBuilder; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.network.NodesKey; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.network.nodes.NodeInfo; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200827.network.nodes.NodeInfoBuilder; +import org.opendaylight.transportpce.test.AbstractTest; +import org.opendaylight.transportpce.test.converter.DataObjectConverter; +import org.opendaylight.transportpce.test.converter.JSONDataObjectConverter; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210315.Network; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument; +import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +public class MappingUtilsImplTest extends AbstractTest { + private static final Logger LOG = LoggerFactory.getLogger(MappingUtilsImplTest.class); + private static MappingUtils mappingUtils; -public class MappingUtilsImplTest { - - private DataBroker dataBroker = null; - - @Before - public void setUp() throws Exception { - DataStoreContext dataStoreContext = new DataStoreContextImpl(); - dataBroker = dataStoreContext.getDataBroker(); + @BeforeClass + public static void setUp() throws InterruptedException, ExecutionException, FileNotFoundException { + DataObjectConverter dataObjectConverter = JSONDataObjectConverter + .createWithDataStoreUtil(getDataStoreContextUtil()); + try (Reader reader = new FileReader("src/test/resources/network.json", StandardCharsets.UTF_8)) { + NormalizedNode normalizedNode = dataObjectConverter + .transformIntoNormalizedNode(reader).get(); + Network network = (Network) getDataStoreContextUtil() + .getBindingDOMCodecServices().fromNormalizedNode(YangInstanceIdentifier + .of(Network.QNAME), normalizedNode).getValue(); + WriteTransaction writeNetworkTransaction = getDataBroker().newWriteOnlyTransaction(); + writeNetworkTransaction.put(LogicalDatastoreType.CONFIGURATION, + InstanceIdentifier.builder(Network.class).build(), network); + writeNetworkTransaction.commit().get(); + } catch (IOException e) { + LOG.error("Cannot load network ", e); + fail("Cannot load network"); + } + mappingUtils = new MappingUtilsImpl(getDataBroker()); } @Test public void getOpenRoadmVersionTest() throws ExecutionException, InterruptedException { - final MappingUtils mappingUtils = new MappingUtilsImpl(dataBroker); - final NodeInfo nodeInfo = new NodeInfoBuilder().setOpenroadmVersion(NodeInfo.OpenroadmVersion._121).build(); - final NodeInfo nodeInfo2 = new NodeInfoBuilder().setOpenroadmVersion(NodeInfo.OpenroadmVersion._221).build(); - Nodes nodes = new NodesBuilder().setNodeId("node3").build(); - InstanceIdentifier nodeInfoIID = InstanceIdentifier.builder(Network.class).child(Nodes.class, - new NodesKey("node")).child(NodeInfo.class).build(); - InstanceIdentifier nodeInfoIID2 = InstanceIdentifier.builder(Network.class).child(Nodes.class, - new NodesKey("node2")).child(NodeInfo.class).build(); - InstanceIdentifier nodeIID = InstanceIdentifier.builder(Network.class).child(Nodes.class, - new NodesKey("node3")).build(); - WriteTransaction wr = dataBroker.newWriteOnlyTransaction(); + assertEquals("NodeInfo with ROADM-C1 as id should be 1.2.1 version", + StringConstants.OPENROADM_DEVICE_VERSION_1_2_1, + mappingUtils.getOpenRoadmVersion("ROADM-C1")); + assertEquals("NodeInfo with ROADM-A1 as id should be 2.2.1 version", + StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, + mappingUtils.getOpenRoadmVersion("ROADM-A1")); + assertNull("NodeInfo with nodes3 as id should not exist", mappingUtils.getOpenRoadmVersion("nodes3")); + } - //Create a node version 1, a node version 2, and a node no version - wr.merge(LogicalDatastoreType.CONFIGURATION, nodeInfoIID, nodeInfo, true); - wr.merge(LogicalDatastoreType.CONFIGURATION, nodeInfoIID2, nodeInfo2, true); - wr.merge(LogicalDatastoreType.CONFIGURATION, nodeIID, nodes, true); - wr.commit().get(); - //Test the versions are returned OK - assertEquals("They have the same openroadmVersion", - mappingUtils.getOpenRoadmVersion("node"), StringConstants.OPENROADM_DEVICE_VERSION_1_2_1); - assertEquals("They have the same openroadmVersion", - mappingUtils.getOpenRoadmVersion("node2"), StringConstants.OPENROADM_DEVICE_VERSION_2_2_1); - assertNull("node3 isn't exists", mappingUtils.getOpenRoadmVersion("node3")); - assertNotNull("node is existed", mappingUtils.getOpenRoadmVersion("node")); - assertNotNull("node2 is existed", mappingUtils.getOpenRoadmVersion("node2")); + @Test + public void getMcCapabilitiesForNodeTest() { + assertEquals("Mc capabilities list size should be 2", 2, + mappingUtils.getMcCapabilitiesForNode("ROADM-A1").size()); + assertTrue("Mc capabilities list size should be empty", + mappingUtils.getMcCapabilitiesForNode("ROADM-A2").isEmpty()); }