@Test
public void createTopologyShardForDegreeTest() {
- Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 2, 0);
+ Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 2, List.of());
TopologyShard topologyShard = OpenRoadmTopology.createTopologyShard(mappingNode);
assertNotNull(topologyShard);
assertEquals("Should contain 2 Degree nodes only", 2, topologyShard.getNodes().size());
@Test
public void createTopologyShardForSrgTest() {
- Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 0, 1);
+ Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 0,
+ List.of(Integer.valueOf(1)));
TopologyShard topologyShard = OpenRoadmTopology.createTopologyShard(mappingNode);
assertNotNull(topologyShard);
List<Node> nodes = topologyShard.getNodes();
checkSrgNode("1", nodes.get(0));
}
+ @Test
+ public void createTopologyShardForMultipleSrgTest() {
+ List<Integer> srgNbs = List.of(Integer.valueOf(1), Integer.valueOf(2), Integer.valueOf(10),
+ Integer.valueOf(11));
+ Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 0, srgNbs);
+ TopologyShard topologyShard = OpenRoadmTopology.createTopologyShard(mappingNode);
+ assertNotNull(topologyShard);
+ List<Node> nodes = topologyShard.getNodes().stream()
+ .sorted((n1, n2) -> n1.getNodeId().getValue().compareTo(n2.getNodeId().getValue()))
+ .collect(Collectors.toList());
+ assertEquals("Should contain 4 SRG nodes", 4, nodes.size());
+ assertEquals("Should contain 0 link", 0, topologyShard.getLinks().size());
+ checkSrgNode("1", nodes.get(0));
+ checkSrgNode("10", nodes.get(1));
+ checkSrgNode("11", nodes.get(2));
+ checkSrgNode("2", nodes.get(3));
+ }
+
@Test
public void createTopologyShardForCompleteRdmNodeTest() {
- Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 2, 2);
+ Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", "nodeA", 2,
+ List.of(Integer.valueOf(1), Integer.valueOf(2)));
TopologyShard topologyShard = OpenRoadmTopology.createTopologyShard(mappingNode);
assertNotNull(topologyShard);
assertEquals("Should contain 2 Deg and 2 SRG nodes", 4, topologyShard.getNodes().size());
@Ignore
@Test
public void createTopologyShardForRdmWithoutClliTest() {
- Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", null, 2, 0);
+ Nodes mappingNode = NetworkmodelTestUtil.createMappingForRdm("ROADMA01", null, 2, List.of());
TopologyShard topologyShard = OpenRoadmTopology.createTopologyShard(mappingNode);
assertNull("clli must not be null", topologyShard);
}
private static final Logger LOG = LoggerFactory.getLogger(NetworkmodelTestUtil.class);
- public static Nodes createMappingForRdm(String nodeId, String clli, int degNb, int srgNb) {
+ public static Nodes createMappingForRdm(String nodeId, String clli, int degNb, List<Integer> srgNbs) {
Map<MappingKey,Mapping> mappingList = new HashMap<>();
createDegreeMappings(mappingList, 1, degNb);
- createSrgMappings(mappingList, 1, srgNb);
+ for (Integer integer : srgNbs) {
+ createSrgMappings(mappingList, integer.intValue());
+ }
return new NodesBuilder()
.setNodeId(nodeId)
.setNodeInfo(new NodeInfoBuilder().setNodeType(NodeTypes.Rdm).setNodeClli(clli).build())
return mappingMap;
}
- private static Map<MappingKey,Mapping> createSrgMappings(Map<MappingKey,Mapping> mappingMap,
- int srgNbStart, int srgNbStop) {
- for (int i = srgNbStart; i <= srgNbStop; i++) {
- for (int j = 1; j <= 4; j++) {
- Mapping mapping = new MappingBuilder()
- .setLogicalConnectionPoint("SRG" + i + "-PP" + j + "-TXRX")
- .setPortDirection("bidirectional")
- .setSupportingPort("C" + j)
- .setSupportingCircuitPackName(3 + i + "/0")
- .build();
- mappingMap.put(mapping.key(),mapping);
- }
+ private static Map<MappingKey,Mapping> createSrgMappings(Map<MappingKey,Mapping> mappingMap, int srgNb) {
+ for (int j = 1; j <= 4; j++) {
+ Mapping mapping = new MappingBuilder()
+ .setLogicalConnectionPoint("SRG" + srgNb + "-PP" + j + "-TXRX")
+ .setPortDirection("bidirectional")
+ .setSupportingPort("C" + j)
+ .setSupportingCircuitPackName(3 + srgNb + "/0")
+ .build();
+ mappingMap.put(mapping.key(),mapping);
}
return mappingMap;
}