Enforce SpotBugs in Service handler
[transportpce.git] / servicehandler / src / test / java / org / opendaylight / transportpce / servicehandler / validation / checks / ServicehandlerTxRxCheckTest.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
9 package org.opendaylight.transportpce.servicehandler.validation.checks;
10
11 import static org.opendaylight.transportpce.servicehandler.validation.checks.ServicehandlerTxRxCheck.LogMessages;
12
13 import org.junit.Assert;
14 import org.junit.Ignore;
15 import org.junit.Test;
16 import org.opendaylight.transportpce.servicehandler.ServiceEndpointType;
17 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.ServiceAEndBuilder;
18 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.endpoint.RxDirectionBuilder;
19 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.endpoint.TxDirectionBuilder;
20 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.lgx.LgxBuilder;
21 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev190531.service.port.PortBuilder;
22 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.format.rev190531.ServiceFormat;
23
24 public class ServicehandlerTxRxCheckTest {
25
26     @Test
27     public void checkPortShouldBeFalseForNullPort() {
28         Assert.assertFalse(ServicehandlerTxRxCheck.checkPort(null));
29     }
30
31     @Test
32     public void checkLgxShouldBeFalseForNullLgx() {
33         Assert.assertFalse(ServicehandlerTxRxCheck.checkLgx(null));
34     }
35
36     @Test
37     public void checkTxOrRxInfoForNullTx() {
38         ComplianceCheckResult result = ServicehandlerTxRxCheck.checkTxOrRxInfo(
39                 null,
40                 new RxDirectionBuilder()
41                     .setPort(new PortBuilder().setPortDeviceName("q")
42                             .setPortName("n").setPortRack("r").setPortShelf("s").setPortType("t").build())
43                     .setLgx(new LgxBuilder().setLgxDeviceName("l")
44                             .setLgxPortName("p").setLgxPortRack("r").setLgxPortShelf("s").build())
45                     .build());
46
47         Assert.assertFalse(result.hasPassed());
48         Assert.assertEquals(LogMessages.TXDIR_NOT_SET, result.getMessage());
49     }
50
51     @Test
52     public void checkTxOrRxInfoForNullTxPort() {
53         ComplianceCheckResult result = ServicehandlerTxRxCheck.checkTxOrRxInfo(
54                 new TxDirectionBuilder()
55                     .setLgx(new LgxBuilder().setLgxDeviceName("l")
56                             .setLgxPortName("p").setLgxPortRack("r").setLgxPortShelf("s").build())
57                     .build(),
58                 new RxDirectionBuilder()
59                     .setPort(new PortBuilder().setPortDeviceName("q")
60                             .setPortName("n").setPortRack("r").setPortShelf("s").setPortType("t").build())
61                     .setLgx(new LgxBuilder().setLgxDeviceName("l")
62                             .setLgxPortName("p").setLgxPortRack("r").setLgxPortShelf("s").build())
63                     .build());
64
65         Assert.assertFalse(result.hasPassed());
66         Assert.assertEquals(LogMessages.TXDIR_PORT_NOT_SET, result.getMessage());
67     }
68
69     @Test
70     public void checkTxOrRxInfoForNullTxLgx() {
71         ComplianceCheckResult result = ServicehandlerTxRxCheck.checkTxOrRxInfo(
72                 new TxDirectionBuilder()
73                     .setPort(new PortBuilder().setPortDeviceName("q")
74                             .setPortName("n").setPortRack("r").setPortShelf("s").setPortType("t").build()).build(),
75                 new RxDirectionBuilder()
76                     .setPort(new PortBuilder().setPortDeviceName("q")
77                             .setPortName("n").setPortRack("r").setPortShelf("s").setPortType("t").build())
78                     .setLgx(new LgxBuilder().setLgxDeviceName("l")
79                             .setLgxPortName("p").setLgxPortRack("r").setLgxPortShelf("s").build())
80                     .build());
81
82         Assert.assertFalse(result.hasPassed());
83         Assert.assertEquals(LogMessages.TXDIR_LGX_NOT_SET, result.getMessage());
84     }
85
86     @Test
87     public void checkTxOrRxInfoForNullRx() {
88         ComplianceCheckResult result = ServicehandlerTxRxCheck.checkTxOrRxInfo(
89                 new TxDirectionBuilder()
90                     .setPort(new PortBuilder().setPortDeviceName("q")
91                             .setPortName("n").setPortRack("r").setPortShelf("s").setPortType("t").build())
92                     .setLgx(new LgxBuilder().setLgxDeviceName("l")
93                             .setLgxPortName("p").setLgxPortRack("r").setLgxPortShelf("s").build())
94                     .build(),
95                 null);
96
97         Assert.assertFalse(result.hasPassed());
98         Assert.assertEquals(LogMessages.RXDIR_NOT_SET, result.getMessage());
99     }
100
101     @Test
102     public void checkTxOrRxInfoForNullRxPort() {
103         ComplianceCheckResult result = ServicehandlerTxRxCheck.checkTxOrRxInfo(
104                 new TxDirectionBuilder()
105                     .setPort(new PortBuilder().setPortDeviceName("q")
106                             .setPortName("n").setPortRack("r").setPortShelf("s").setPortType("t").build())
107                     .setLgx(new LgxBuilder().setLgxDeviceName("l")
108                             .setLgxPortName("p").setLgxPortRack("r").setLgxPortShelf("s").build())
109                     .build(),
110                 new RxDirectionBuilder()
111                     .setLgx(new LgxBuilder().setLgxDeviceName("l")
112                             .setLgxPortName("p").setLgxPortRack("r").setLgxPortShelf("s").build())
113                     .build());
114
115         Assert.assertFalse(result.hasPassed());
116         Assert.assertEquals(LogMessages.RXDIR_PORT_NOT_SET, result.getMessage());
117     }
118
119     @Test
120     public void checkTxOrRxInfoForNullRxLgx() {
121         ComplianceCheckResult result = ServicehandlerTxRxCheck.checkTxOrRxInfo(
122                 new TxDirectionBuilder()
123                     .setPort(new PortBuilder().setPortDeviceName("q")
124                             .setPortName("n").setPortRack("r").setPortShelf("s").setPortType("t").build())
125                     .setLgx(new LgxBuilder().setLgxDeviceName("l")
126                             .setLgxPortName("p").setLgxPortRack("r").setLgxPortShelf("s").build())
127                     .build(),
128                 new RxDirectionBuilder()
129                     .setPort(new PortBuilder().setPortDeviceName("q")
130                             .setPortName("n").setPortRack("r").setPortShelf("s").setPortType("t").build())
131                     .build());
132
133         Assert.assertFalse(result.hasPassed());
134         Assert.assertEquals(LogMessages.RXDIR_LGX_NOT_SET, result.getMessage());
135     }
136
137     @Test
138     public void checkForServiceEndNull() {
139         ComplianceCheckResult result = ServicehandlerTxRxCheck.check(null, ServiceEndpointType.SERVICEAEND);
140
141         Assert.assertFalse(result.hasPassed());
142         Assert.assertEquals(LogMessages.endpointTypeNotSet(ServiceEndpointType.SERVICEAEND), result.getMessage());
143     }
144
145     @Ignore
146     @Test
147     public void checkForServiceRateNull() {
148         ComplianceCheckResult result =
149             ServicehandlerTxRxCheck.check(new ServiceAEndBuilder().build(), ServiceEndpointType.SERVICEAEND);
150
151         Assert.assertFalse(result.hasPassed());
152         Assert.assertEquals(LogMessages.rateNotSet(ServiceEndpointType.SERVICEAEND), result.getMessage());
153     }
154
155     @Test
156     public void checkForServiceRateEquals0() {
157         ComplianceCheckResult result = ServicehandlerTxRxCheck.check(
158             new ServiceAEndBuilder().setServiceRate(0L).build(), ServiceEndpointType.SERVICEAEND);
159
160         Assert.assertFalse(result.hasPassed());
161         Assert.assertEquals(LogMessages.rateNotSet(ServiceEndpointType.SERVICEAEND), result.getMessage());
162     }
163
164     @Test
165     public void checkForServiceFormatNull() {
166         ComplianceCheckResult result = ServicehandlerTxRxCheck.check(
167             new ServiceAEndBuilder().setServiceRate(3L).build(), ServiceEndpointType.SERVICEAEND);
168
169         Assert.assertFalse(result.hasPassed());
170         Assert.assertEquals(LogMessages.formatNotSet(ServiceEndpointType.SERVICEAEND), result.getMessage());
171     }
172
173     @Test
174     public void checkForClliEmpty() {
175         ComplianceCheckResult result = ServicehandlerTxRxCheck.check(new ServiceAEndBuilder()
176             .setServiceRate(3L).setClli("").setServiceFormat(ServiceFormat.Ethernet).build(),
177             ServiceEndpointType.SERVICEAEND);
178
179         Assert.assertFalse(result.hasPassed());
180         Assert.assertEquals(LogMessages.clliNotSet(ServiceEndpointType.SERVICEAEND), result.getMessage());
181     }
182
183     @Test
184     public void checkForFailTxOrRx() {
185         ComplianceCheckResult result = ServicehandlerTxRxCheck.check(new ServiceAEndBuilder()
186             .setServiceRate(3L).setClli("cc").setServiceFormat(ServiceFormat.Ethernet).build(),
187             ServiceEndpointType.SERVICEAEND);
188
189         Assert.assertFalse(result.hasPassed());
190         Assert.assertEquals(LogMessages.TXDIR_NOT_SET, result.getMessage());
191     }
192 }