update portmapping YANG to store SAPI/DAPI hashmap
[transportpce.git] / renderer / src / test / java / org / opendaylight / transportpce / renderer / openroadminterface / OpenRoadMInterface221Test.java
1 /*
2  * Copyright © 2019 Orange, Inc. and others.  All rights reserved.
3  *
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
7  */
8 package org.opendaylight.transportpce.renderer.openroadminterface;
9
10 import java.util.Arrays;
11 import org.junit.Assert;
12 import org.junit.Before;
13 import org.junit.Test;
14 import org.mockito.Mockito;
15 import org.opendaylight.transportpce.common.fixedflex.FixedFlexImpl;
16 import org.opendaylight.transportpce.common.fixedflex.FixedFlexInterface;
17 import org.opendaylight.transportpce.common.mapping.PortMapping;
18 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaceException;
19 import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfaces;
20 import org.opendaylight.transportpce.test.AbstractTest;
21 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev200429.network.nodes.MappingBuilder;
22
23 public class OpenRoadMInterface221Test extends AbstractTest {
24
25     private final PortMapping portMapping = Mockito.mock(PortMapping.class);
26     private final FixedFlexInterface fixedFlex = Mockito.spy(FixedFlexInterface.class);
27     private OpenRoadmInterface221 openRoadMInterface221;
28     private final String nodeId = "node1";
29
30     @Before
31     public void setup() {
32
33         OpenRoadmInterfaces openRoadmInterfaces = Mockito.spy(OpenRoadmInterfaces.class);
34         this.openRoadMInterface221 = new OpenRoadmInterface221(portMapping, openRoadmInterfaces, fixedFlex);
35     }
36
37     @Test
38     public void testCreateOpenRoadmEthInterface() throws OpenRoadmInterfaceException {
39
40         String logicalConnPoint = "logicalConnPoint";
41         Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint)).thenReturn(new MappingBuilder().build());
42         Assert.assertEquals(openRoadMInterface221.createOpenRoadmEthInterface(nodeId, logicalConnPoint),
43                 logicalConnPoint + "-ETHERNET");
44     }
45
46     @Test(expected = Exception.class)
47     public void testCreateOpenRoadmEthInterfaceThrowsExcpetion() throws OpenRoadmInterfaceException {
48
49         String logicalConnPoint = "logicalConnPoint";
50         Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint)).thenReturn(null);
51         openRoadMInterface221.createOpenRoadmEthInterface(nodeId, logicalConnPoint);
52     }
53
54     @Test
55     public void testCreateFlexOCH() throws OpenRoadmInterfaceException {
56
57         String logicalConnPoint = "logicalConnPoint";
58         Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint)).thenReturn(new MappingBuilder().build());
59         Mockito.when(fixedFlex.getFixedFlexWaveMapping(Mockito.anyLong())).thenReturn(new FixedFlexImpl());
60         Mockito.when(fixedFlex.getStart()).thenReturn(12d);
61         Mockito.when(fixedFlex.getStop()).thenReturn(12d);
62         Mockito.when(fixedFlex.getCenterFrequency()).thenReturn(12d);
63         Long waveNumber = 1000L;
64         Assert.assertNotNull(openRoadMInterface221.createFlexOCH(nodeId, logicalConnPoint, waveNumber));
65         Assert.assertEquals(openRoadMInterface221.createFlexOCH(nodeId, logicalConnPoint, waveNumber),
66                 Arrays.asList(logicalConnPoint + "-nmc-" + waveNumber));
67     }
68
69     @Test
70     public void testCreateFlexOCHReturnsMoreThanOneElement() throws OpenRoadmInterfaceException {
71
72         String logicalConnPoint = "logicalConnPointDEG";
73         Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint)).thenReturn(new MappingBuilder().build());
74         Mockito.when(fixedFlex.getFixedFlexWaveMapping(Mockito.anyLong())).thenReturn(new FixedFlexImpl());
75         Mockito.when(fixedFlex.getStart()).thenReturn(12d);
76         Mockito.when(fixedFlex.getStop()).thenReturn(12d);
77         Mockito.when(fixedFlex.getCenterFrequency()).thenReturn(12d);
78         Long waveNumber = 1000L;
79         Assert.assertNotNull(openRoadMInterface221.createFlexOCH(nodeId, logicalConnPoint, waveNumber));
80         Assert.assertEquals(openRoadMInterface221.createFlexOCH(nodeId, logicalConnPoint, waveNumber),
81                 Arrays.asList(logicalConnPoint + "-mc-" + waveNumber, logicalConnPoint + "-nmc-" + waveNumber));
82     }
83
84     @Test
85     public void testCreateOpenRoadmOchInterface() throws OpenRoadmInterfaceException {
86
87         String logicalConnPoint = "logicalConnPoint";
88         Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint))
89                 .thenReturn(new MappingBuilder().setLogicalConnectionPoint(logicalConnPoint).build());
90         Mockito.when(fixedFlex.getCenterFrequency()).thenReturn(12d);
91         Mockito.when(fixedFlex.getFixedFlexWaveMapping(Mockito.anyLong())).thenReturn(new FixedFlexImpl());
92         Long waveNumber = 1000L;
93         Assert.assertEquals(openRoadMInterface221.createOpenRoadmOchInterface(nodeId, logicalConnPoint, waveNumber),
94                 logicalConnPoint + "-" + waveNumber);
95     }
96
97     @Test
98     public void testCreateOpenRoadmOtu4Interface() throws OpenRoadmInterfaceException {
99
100         String logicalConnPoint = "logicalConnPoint";
101         String supportOchInterface = "supportOchInterface";
102         Mockito.when(portMapping.getMapping(nodeId, logicalConnPoint))
103                 .thenReturn(new MappingBuilder().setLogicalConnectionPoint(logicalConnPoint).build());
104         Assert.assertEquals(
105                 openRoadMInterface221.createOpenRoadmOtu4Interface(nodeId, logicalConnPoint, supportOchInterface),
106                 logicalConnPoint + "-OTU");
107
108     }
109
110     @Test
111     public void testCreateOpenRoadmOchInterfaceName() {
112
113         String logicalConnPoint = "logicalConnPoint";
114         Long waveNumber = 1000L;
115         Assert.assertEquals(openRoadMInterface221.createOpenRoadmOchInterfaceName(logicalConnPoint, waveNumber),
116                 logicalConnPoint + "-" + waveNumber);
117
118     }
119
120     @Test
121     public void testCreateOpenRoadmOmsInterfaceSupportingOmsNotNull() throws OpenRoadmInterfaceException {
122
123         String supportingOms = "supportingOms";
124         Assert.assertEquals(openRoadMInterface221.createOpenRoadmOmsInterface(nodeId,
125                 new MappingBuilder().setSupportingOms(supportingOms).build()), supportingOms);
126     }
127
128     @Test
129     public void testCreateOpenRoadmOmsInterfaceSupportingOmsNotNullException() throws OpenRoadmInterfaceException {
130
131         Assert.assertNull(openRoadMInterface221.createOpenRoadmOmsInterface(nodeId, new MappingBuilder().build()));
132     }
133
134     @Test
135     public void testCreateOpenRoadmOmsInterfaceSupportingOmsNull() throws OpenRoadmInterfaceException {
136
137         String supportingOts = "supportingOts";
138         String logicalConnPoint = "logicalConnPoint";
139         Assert.assertEquals(
140                 openRoadMInterface221.createOpenRoadmOmsInterface(nodeId, new MappingBuilder()
141                         .setLogicalConnectionPoint(logicalConnPoint).setSupportingOts(supportingOts).build()),
142                 "OMS-" + logicalConnPoint);
143     }
144
145 }