21936ac473df588df43186bf4ffd8d66de90c788
[appc.git] / appc-dg / appc-dg-shared / appc-dg-domain-model-lib / src / test / java / org / onap / appc / domainmodel / TestVnfc.java
1 /*
2 * ============LICENSE_START=======================================================
3 * ONAP : APPC
4 * ================================================================================
5 * Copyright 2018 TechMahindra
6 *=================================================================================
7 * Modifications Copyright 2018 IBM.
8 *=================================================================================
9 * Licensed under the Apache License, Version 2.0 (the "License");
10 * you may not use this file except in compliance with the License.
11 * You may obtain a copy of the License at
12 *
13 *     http://www.apache.org/licenses/LICENSE-2.0
14 *
15 * Unless required by applicable law or agreed to in writing, software
16 * distributed under the License is distributed on an "AS IS" BASIS,
17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 * See the License for the specific language governing permissions and
19 * limitations under the License.
20 * ============LICENSE_END=========================================================
21 */
22 package org.onap.appc.domainmodel;
23
24 import static org.junit.Assert.*;
25
26 import java.util.LinkedList;
27 import java.util.List;
28
29 import org.junit.Before;
30 import org.junit.Test;
31
32 public class TestVnfc {
33     private Vnfc vnfc;
34     private Vnfc vnfc1;
35     private Vnfc vnfc2;
36
37     @Before
38     public void SetUp() {
39         vnfc = new Vnfc();
40         vnfc1 = new Vnfc();
41         vnfc2 = new Vnfc();
42     }
43
44     @Test
45     public void testGetVnfcType() {
46         vnfc.setVnfcType("1");
47         assertNotNull(vnfc.getVnfcType());
48         assertEquals(vnfc.getVnfcType(), "1");
49     }
50
51     @Test
52     public void testGetResilienceType() {
53         vnfc.setResilienceType("resilienceType");
54         assertNotNull(vnfc.getResilienceType());
55         assertEquals(vnfc.getResilienceType(), "resilienceType");
56     }
57
58     @Test
59     public void testGetVnfcName() {
60         vnfc.setVnfcName("vnfcName");
61         assertNotNull(vnfc.getVnfcName());
62         assertEquals(vnfc.getVnfcName(), "vnfcName");
63     }
64
65     @Test
66     public void testGetvserverList() {
67         List<Vserver> vserverList = new LinkedList<>();
68         vnfc.setVserverList(vserverList);
69         assertNotNull(vnfc.getVserverList());
70         assertEquals(vnfc.getVserverList(), vserverList);
71     }
72
73     @Test
74     public void testIsMandatory() {
75         vnfc.setMandatory(false);
76         assertNotNull(vnfc.isMandatory());
77         assertEquals(vnfc.isMandatory(), false);
78     }
79
80     @Test
81     public void testToStringWithASingleVserver() {
82         vnfc.setVnfcName("A");
83         vnfc.setVnfcType("B");
84         vnfc.setMandatory(false);
85         Vserver vserver = new Vserver();
86         vserver.setId("V1");
87         vserver.setName("V1-Name");
88         vserver.setRelatedLink("V1-relatedlink");
89         vserver.setTenantId("V1-T1");
90         vserver.setUrl("http://v1.net");
91         vserver.setVnfc(vnfc);
92         vnfc.addVserver(vserver);
93
94         System.out.println("ok vnfc = " + vnfc.toString());
95
96         assertEquals(vnfc.toString(),
97                 "Vnfc : vnfcType = B, vnfcName = A, resilienceType = null, mandatory = falseVserver : url = http://v1.net, tenantId = V1-T1, id = V1 ,relatedLink = V1-relatedlink , name = V1-Name, \n");
98     }
99
100     @Test
101     public void testHashCode() {
102         vnfc.setVnfcName("A");
103         vnfc.setVnfcType("B");
104         vnfc.setResilienceType("RS1");
105         vnfc.setMandatory(true);
106         List<Vserver> vserverList = new LinkedList<>();
107         Vserver vserver = new Vserver();
108         vserver.setId("V1");
109         vserver.setName("V1-Name");
110         vserver.setRelatedLink("V1-relatedlink");
111         vserver.setTenantId("V1-T1");
112         vserver.setUrl("http://v1.net");
113         vserver.setVnfc(vnfc);
114         vserverList.add(vserver);
115         vnfc.addVservers(vserverList);
116         System.out.println("ok vnfc hashcode = " + vnfc.hashCode());
117
118         assertTrue(vnfc.hashCode() == 81141437);
119     }
120
121     @Test
122     public void testCompareVnfc() {
123         Vnfc vnfc1 = new Vnfc();
124         vnfc1.setVnfcName("A");
125         vnfc1.setVnfcType("B");
126         vnfc1.setMandatory(false);
127         vnfc1.setResilienceType("RS1");
128
129         vnfc.setVnfcName("A");
130         vnfc.setVnfcType("B");
131         vnfc.setResilienceType("RS1");
132
133         vnfc.setMandatory(true);
134
135         assertFalse(vnfc.equals(vnfc1));
136     }
137
138     @Test
139     public void testToStringWithVserverList() {
140         vnfc.setVnfcName("A");
141         vnfc.setVnfcType("B");
142         vnfc.setMandatory(false);
143         List<Vserver> vserverList = new LinkedList<>();
144         Vserver vserver = new Vserver();
145         vserver.setId("V1");
146         vserver.setName("V1-Name");
147         vserver.setRelatedLink("V1-relatedlink");
148         vserver.setTenantId("V1-T1");
149         vserver.setUrl("http://v1.net");
150         vserver.setVnfc(vnfc);
151         vserverList.add(vserver);
152         vnfc.setVserverList(vserverList);
153
154         System.out.println("vnfc = " + vnfc.toString());
155
156         assertEquals(vnfc.toString(),
157                 "Vnfc : vnfcType = B, vnfcName = A, resilienceType = null, mandatory = falseVserver : url = http://v1.net, tenantId = V1-T1, id = V1 ,relatedLink = V1-relatedlink , name = V1-Name, \n");
158     }
159
160     @Test
161     public void testEquals() {
162         vnfc1.setMandatory(true);
163         vnfc1.setResilienceType("RS1");
164         vnfc1.setVnfcName("A");
165         vnfc1.setVnfcType("testType");
166         List<Vserver> vserverList = new LinkedList<>();
167         Vserver vserver = new Vserver();
168         vserver.setId("V1");
169         vserver.setName("V1-Name");
170         vserver.setRelatedLink("V1-relatedlink");
171         vserver.setTenantId("V1-T1");
172         vserver.setUrl("http://v1.net");
173         vserver.setVnfc(vnfc);
174         vserverList.add(vserver);
175         vnfc1.setVserverList(vserverList);
176
177         vnfc2.setMandatory(true);
178         vnfc2.setResilienceType("RS1");
179         vnfc2.setVnfcName("A");
180         vnfc2.setVnfcType("testType");
181         vnfc2.setVserverList(vserverList);
182
183         assertTrue(vnfc1.equals(vnfc2));
184     }
185
186     @Test
187     public void testEqualsforDifferentObjects() {
188         vnfc1.setMandatory(true);
189         vnfc1.setResilienceType("RS1");
190         vnfc1.setVnfcName("A");
191         vnfc1.setVnfcType("testType");
192         List<Vserver> vserverList = new LinkedList<>();
193         Vserver vserver = new Vserver();
194         vserver.setId("V1");
195         vserver.setName("V1-Name");
196         vserver.setRelatedLink("V1-relatedlink");
197         vserver.setTenantId("V1-T1");
198         vserver.setUrl("http://v1.net");
199         vserver.setVnfc(vnfc);
200         vserverList.add(vserver);
201         vnfc1.setVserverList(vserverList);
202
203         vnfc2.setMandatory(true);
204         vnfc2.setResilienceType("RS2");
205         vnfc2.setVnfcName("C");
206         vnfc2.setVnfcType("testType1");
207         vnfc2.setVserverList(vserverList);
208
209         assertFalse(vnfc1.equals(vnfc2));
210     }
211 }