Increase ServiceHandler Junit coverage
[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 org.junit.Assert;
12 import org.junit.Test;
13 import org.opendaylight.transportpce.servicehandler.ServiceEndpointType;
14 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.ServiceFormat;
15 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service.ServiceAEndBuilder;
16 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service.endpoint.RxDirectionBuilder;
17 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service.endpoint.TxDirectionBuilder;
18 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service.lgx.LgxBuilder;
19 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service.port.PortBuilder;
20
21 public class ServicehandlerTxRxCheckTest {
22
23     @Test
24     public void checkPortShouldBeFalseForNullPort() {
25         Assert.assertFalse(ServicehandlerTxRxCheck.checkPort(null));
26     }
27
28     @Test
29     public void checkLgxShouldBeFalseForNullLgx() {
30         Assert.assertFalse(ServicehandlerTxRxCheck.checkLgx(null));
31     }
32
33     @Test
34     public void checkTxOrRxInfoForNullTx() {
35         ComplianceCheckResult result = ServicehandlerTxRxCheck.checkTxOrRxInfo(null, null);
36
37         Assert.assertFalse(result.hasPassed());
38         Assert.assertEquals("Service TxDirection is not correctly set", result.getMessage());
39     }
40
41     @Test
42     public void checkTxOrRxInfoForNullTxPort() {
43         ComplianceCheckResult result = ServicehandlerTxRxCheck
44                 .checkTxOrRxInfo(new TxDirectionBuilder().build(), null);
45
46         Assert.assertFalse(result.hasPassed());
47         Assert.assertEquals("Service TxDirection Port is not correctly set", result.getMessage());
48     }
49
50     @Test
51     public void checkTxOrRxInfoForNullTxLgx() {
52         ComplianceCheckResult result = ServicehandlerTxRxCheck
53             .checkTxOrRxInfo(new TxDirectionBuilder()
54                 .setPort(new PortBuilder().setPortDeviceName("q")
55                     .setPortName("n").setPortRack("r").setPortShelf("s").setPortType("t").build()).build(), null);
56
57         Assert.assertFalse(result.hasPassed());
58         Assert.assertEquals("Service TxDirection Lgx is not correctly set", result.getMessage());
59     }
60
61     @Test
62     public void checkTxOrRxInfoForNullRx() {
63         ComplianceCheckResult result = ServicehandlerTxRxCheck
64                 .checkTxOrRxInfo(new TxDirectionBuilder()
65                         .setPort(new PortBuilder().setPortDeviceName("q")
66                                 .setPortName("n").setPortRack("r").setPortShelf("s").setPortType("t").build())
67                         .setLgx(new LgxBuilder().setLgxDeviceName("l")
68                                 .setLgxPortName("p").setLgxPortRack("r").setLgxPortShelf("s").build()).build(), null);
69
70         Assert.assertFalse(result.hasPassed());
71         Assert.assertEquals("Service RxDirection is not correctly set", result.getMessage());
72     }
73
74     @Test
75     public void checkTxOrRxInfoForNullRxPort() {
76         ComplianceCheckResult result = ServicehandlerTxRxCheck
77             .checkTxOrRxInfo(new TxDirectionBuilder()
78                 .setPort(new PortBuilder().setPortDeviceName("q")
79                 .setPortName("n").setPortRack("r").setPortShelf("s").setPortType("t").build())
80                 .setLgx(new LgxBuilder().setLgxDeviceName("l")
81                 .setLgxPortName("p").setLgxPortRack("r").setLgxPortShelf("s").build()).build(),
82             new RxDirectionBuilder().build());
83
84         Assert.assertFalse(result.hasPassed());
85         Assert.assertEquals("Service RxDirection Port is not correctly set", result.getMessage());
86     }
87
88     @Test
89     public void checkTxOrRxInfoForNullRxLgx() {
90         ComplianceCheckResult result = ServicehandlerTxRxCheck
91                 .checkTxOrRxInfo(new TxDirectionBuilder()
92                         .setPort(new PortBuilder().setPortDeviceName("q")
93                                 .setPortName("n").setPortRack("r").setPortShelf("s").setPortType("t").build())
94                         .setLgx(new LgxBuilder().setLgxDeviceName("l")
95                                 .setLgxPortName("p").setLgxPortRack("r").setLgxPortShelf("s").build()).build(),
96                         new RxDirectionBuilder().setPort(new PortBuilder().setPortDeviceName("q")
97                                 .setPortName("n").setPortRack("r").setPortShelf("s").setPortType("t").build()).build());
98
99         Assert.assertFalse(result.hasPassed());
100         Assert.assertEquals("Service RxDirection Lgx is not correctly set", result.getMessage());
101     }
102
103     @Test
104     public void checkForServiceEndNull() {
105         ComplianceCheckResult result = ServicehandlerTxRxCheck.check(null, ServiceEndpointType.SERVICEAEND);
106
107         Assert.assertFalse(result.hasPassed());
108         Assert.assertEquals(ServiceEndpointType.SERVICEAEND + " is not set", result.getMessage());
109     }
110
111     @Test
112     public void checkForServiceRateNull() {
113         ComplianceCheckResult result =
114             ServicehandlerTxRxCheck.check(new ServiceAEndBuilder().build(), ServiceEndpointType.SERVICEAEND);
115
116         Assert.assertFalse(result.hasPassed());
117         Assert.assertEquals("Service " + ServiceEndpointType.SERVICEAEND + " rate is not set", result.getMessage());
118     }
119
120     @Test
121     public void checkForServiceRateEquals0() {
122         ComplianceCheckResult result = ServicehandlerTxRxCheck.check(
123             new ServiceAEndBuilder().setServiceRate(0L).build(), ServiceEndpointType.SERVICEAEND);
124
125         Assert.assertFalse(result.hasPassed());
126         Assert.assertEquals("Service " + ServiceEndpointType.SERVICEAEND + " rate is not set", result.getMessage());
127     }
128
129     @Test
130     public void checkForServiceFormatNull() {
131         ComplianceCheckResult result = ServicehandlerTxRxCheck.check(
132             new ServiceAEndBuilder().setServiceRate(3L).build(), ServiceEndpointType.SERVICEAEND);
133
134         Assert.assertFalse(result.hasPassed());
135         Assert.assertEquals("Service " + ServiceEndpointType.SERVICEAEND + " format is not set", result.getMessage());
136     }
137
138     @Test
139     public void checkForClliEmpty() {
140         ComplianceCheckResult result = ServicehandlerTxRxCheck.check(new ServiceAEndBuilder()
141             .setServiceRate(3L).setClli("").setServiceFormat(ServiceFormat.Ethernet).build(),
142             ServiceEndpointType.SERVICEAEND);
143
144         Assert.assertFalse(result.hasPassed());
145         Assert.assertEquals(
146             "Service" + ServiceEndpointType.SERVICEAEND + " clli format is not set", result.getMessage());
147     }
148
149     @Test
150     public void checkForFailTxOrRx() {
151         ComplianceCheckResult result = ServicehandlerTxRxCheck.check(new ServiceAEndBuilder()
152             .setServiceRate(3L).setClli("cc").setServiceFormat(ServiceFormat.Ethernet).build(),
153             ServiceEndpointType.SERVICEAEND);
154
155         Assert.assertFalse(result.hasPassed());
156         Assert.assertEquals("Service TxDirection is not correctly set", result.getMessage());
157     }
158 }