eea3044add2292e0abedf1e1b6a4f9d1c9b7f1f1
[policy/models.git] / models-interactions / model-impl / so / src / test / java / org / onap / policy / so / SoRequestDetailsTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * so
4  * ================================================================================
5  * Copyright (C) 2018 Ericsson. All rights reserved.
6  * ================================================================================
7  * Modifications Copyright (C) 2019 AT&T Intellectual Property. All rights reserved
8  * Modifications Copyright (C) 2019 Nordix Foundation.
9  * ================================================================================
10  * Licensed under the Apache License, Version 2.0 (the "License");
11  * you may not use this file except in compliance with the License.
12  * You may obtain a copy of the License at
13  *
14  *      http://www.apache.org/licenses/LICENSE-2.0
15  *
16  * Unless required by applicable law or agreed to in writing, software
17  * distributed under the License is distributed on an "AS IS" BASIS,
18  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19  * See the License for the specific language governing permissions and
20  * limitations under the License.
21  * ============LICENSE_END=========================================================
22  */
23
24 package org.onap.policy.so;
25
26 import static org.junit.Assert.assertEquals;
27 import static org.junit.Assert.assertFalse;
28 import static org.junit.Assert.assertNotEquals;
29 import static org.junit.Assert.assertNotNull;
30 import static org.junit.Assert.assertTrue;
31
32 import java.util.ArrayList;
33 import java.util.List;
34
35 import org.junit.Test;
36
37 public class SoRequestDetailsTest {
38
39     @Test
40     public void testConstructor() {
41         SoRequestDetails obj = new SoRequestDetails();
42
43         assertTrue(obj.getCloudConfiguration() == null);
44         assertTrue(obj.getModelInfo() == null);
45         assertTrue(obj.getRequestInfo() == null);
46         assertTrue(obj.getRequestParameters() == null);
47         assertTrue(obj.getSubscriberInfo() == null);
48
49         assertTrue(obj.getRelatedInstanceList() != null);
50         assertEquals(0, obj.getRelatedInstanceList().size());
51     }
52
53     @Test
54     public void testSetGet() {
55         SoRequestDetails obj = new SoRequestDetails();
56
57         SoCloudConfiguration cloudConfiguration = new SoCloudConfiguration();
58         obj.setCloudConfiguration(cloudConfiguration);
59         assertEquals(cloudConfiguration, obj.getCloudConfiguration());
60
61         SoModelInfo modelInfo = new SoModelInfo();
62         obj.setModelInfo(modelInfo);
63         assertEquals(modelInfo, obj.getModelInfo());
64
65         SoRequestInfo requestInfo = new SoRequestInfo();
66         obj.setRequestInfo(requestInfo);
67         assertEquals(requestInfo, obj.getRequestInfo());
68
69         SoRequestParameters requestParameters = new SoRequestParameters();
70         obj.setRequestParameters(requestParameters);
71         assertEquals(requestParameters, obj.getRequestParameters());
72
73         SoSubscriberInfo subscriberInfo = new SoSubscriberInfo();
74         obj.setSubscriberInfo(subscriberInfo);
75         assertEquals(subscriberInfo, obj.getSubscriberInfo());
76     }
77     
78     @Test
79     public void testSoMRequestDetailsMethods() {
80         SoRequestDetails details = new SoRequestDetails();
81         assertNotNull(details);
82         assertNotEquals(0, details.hashCode());
83
84         SoCloudConfiguration cloudConfiguration = new SoCloudConfiguration();
85         details.setCloudConfiguration(cloudConfiguration);
86         assertEquals(cloudConfiguration, details.getCloudConfiguration());
87         assertNotEquals(0, details.hashCode());
88
89         SoModelInfo modelInfo = new SoModelInfo();
90         details.setModelInfo(modelInfo);
91         assertEquals(modelInfo, details.getModelInfo());
92         assertNotEquals(0, details.hashCode());
93
94         List<SoRelatedInstanceListElement> relatedInstanceList = new ArrayList<>();
95         details.setRelatedInstanceList(relatedInstanceList);
96         assertEquals(relatedInstanceList, details.getRelatedInstanceList());
97         assertNotEquals(0, details.hashCode());
98
99         SoRequestInfo requestInfo = new SoRequestInfo();
100         details.setRequestInfo(requestInfo);
101         assertEquals(requestInfo, details.getRequestInfo());
102         assertNotEquals(0, details.hashCode());
103
104         SoRequestParameters requestParameters = new SoRequestParameters();
105         details.setRequestParameters(requestParameters);
106         assertEquals(requestParameters, details.getRequestParameters());
107         assertNotEquals(0, details.hashCode());
108
109         SoSubscriberInfo subscriberInfo = new SoSubscriberInfo();
110         details.setSubscriberInfo(subscriberInfo);
111         assertEquals(subscriberInfo, details.getSubscriberInfo());
112         assertNotEquals(0, details.hashCode());
113
114         assertEquals("SORequestDetails [modelInfo=org.onap.policy.so", details.toString().substring(0,  46));
115
116         SoRequestDetails copiedDetails = new SoRequestDetails(details);
117
118         assertTrue(details.equals(details));
119         assertTrue(details.equals(copiedDetails));
120         assertFalse(details.equals(null));
121         assertFalse(details.equals("Hello"));
122         
123         details.setCloudConfiguration(null);
124         assertFalse(details.equals(copiedDetails));
125         copiedDetails.setCloudConfiguration(null);
126         assertTrue(details.equals(copiedDetails));
127         details.setCloudConfiguration(cloudConfiguration);
128         assertFalse(details.equals(copiedDetails));
129         copiedDetails.setCloudConfiguration(cloudConfiguration);
130         assertTrue(details.equals(copiedDetails));
131
132         details.setModelInfo(null);
133         assertFalse(details.equals(copiedDetails));
134         copiedDetails.setModelInfo(null);
135         assertTrue(details.equals(copiedDetails));
136         details.setModelInfo(modelInfo);
137         assertFalse(details.equals(copiedDetails));
138         copiedDetails.setModelInfo(modelInfo);
139         assertTrue(details.equals(copiedDetails));
140         
141         details.setRequestInfo(null);
142         assertFalse(details.equals(copiedDetails));
143         copiedDetails.setRequestInfo(null);
144         assertTrue(details.equals(copiedDetails));
145         details.setRequestInfo(requestInfo);
146         assertFalse(details.equals(copiedDetails));
147         copiedDetails.setRequestInfo(requestInfo);
148         assertTrue(details.equals(copiedDetails));
149
150         details.setRequestParameters(null);
151         assertFalse(details.equals(copiedDetails));
152         copiedDetails.setRequestParameters(null);
153         assertTrue(details.equals(copiedDetails));
154         details.setRequestParameters(requestParameters);
155         assertFalse(details.equals(copiedDetails));
156         copiedDetails.setRequestParameters(requestParameters);
157         assertTrue(details.equals(copiedDetails));
158
159         details.setSubscriberInfo(null);
160         assertFalse(details.equals(copiedDetails));
161         copiedDetails.setSubscriberInfo(null);
162         assertTrue(details.equals(copiedDetails));
163         details.setSubscriberInfo(subscriberInfo);
164         assertFalse(details.equals(copiedDetails));
165         copiedDetails.setSubscriberInfo(subscriberInfo);
166         assertTrue(details.equals(copiedDetails));
167
168         details.setRelatedInstanceList(null);
169         assertFalse(details.equals(copiedDetails));
170         copiedDetails.setRelatedInstanceList(null);
171         assertTrue(details.equals(copiedDetails));
172         details.setRelatedInstanceList(relatedInstanceList);
173         assertFalse(details.equals(copiedDetails));
174         copiedDetails.setRelatedInstanceList(relatedInstanceList);
175         assertTrue(details.equals(copiedDetails));
176     }
177 }