f7b663e4baa5cdf0d55290cf8528ee62c45af542
[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-2020 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.assertNotEquals;
28 import static org.junit.Assert.assertNotNull;
29 import static org.junit.Assert.assertNull;
30
31 import java.util.ArrayList;
32 import java.util.List;
33 import org.junit.Test;
34
35 public class SoRequestDetailsTest {
36
37     @Test
38     public void testConstructor() {
39         SoRequestDetails obj = new SoRequestDetails();
40
41         assertNull(obj.getCloudConfiguration());
42         assertNull(obj.getModelInfo());
43         assertNull(obj.getRequestInfo());
44         assertNull(obj.getRequestParameters());
45         assertNull(obj.getSubscriberInfo());
46
47         assertNotNull(obj.getRelatedInstanceList());
48         assertEquals(0, obj.getRelatedInstanceList().size());
49     }
50
51     @Test
52     public void testSetGet() {
53         SoRequestDetails obj = new SoRequestDetails();
54
55         SoCloudConfiguration cloudConfiguration = new SoCloudConfiguration();
56         obj.setCloudConfiguration(cloudConfiguration);
57         assertEquals(cloudConfiguration, obj.getCloudConfiguration());
58
59         SoModelInfo modelInfo = new SoModelInfo();
60         obj.setModelInfo(modelInfo);
61         assertEquals(modelInfo, obj.getModelInfo());
62
63         SoRequestInfo requestInfo = new SoRequestInfo();
64         obj.setRequestInfo(requestInfo);
65         assertEquals(requestInfo, obj.getRequestInfo());
66
67         SoRequestParameters requestParameters = new SoRequestParameters();
68         obj.setRequestParameters(requestParameters);
69         assertEquals(requestParameters, obj.getRequestParameters());
70
71         SoSubscriberInfo subscriberInfo = new SoSubscriberInfo();
72         obj.setSubscriberInfo(subscriberInfo);
73         assertEquals(subscriberInfo, obj.getSubscriberInfo());
74     }
75
76     @Test
77     public void testSoMRequestDetailsMethods() {
78         SoRequestDetails details = new SoRequestDetails();
79         assertNotNull(details);
80         assertNotEquals(0, details.hashCode());
81
82         SoCloudConfiguration cloudConfiguration = new SoCloudConfiguration();
83         details.setCloudConfiguration(cloudConfiguration);
84         assertEquals(cloudConfiguration, details.getCloudConfiguration());
85         assertNotEquals(0, details.hashCode());
86
87         SoModelInfo modelInfo = new SoModelInfo();
88         details.setModelInfo(modelInfo);
89         assertEquals(modelInfo, details.getModelInfo());
90         assertNotEquals(0, details.hashCode());
91
92         List<SoRelatedInstanceListElement> relatedInstanceList = new ArrayList<>();
93         details.setRelatedInstanceList(relatedInstanceList);
94         assertEquals(relatedInstanceList, details.getRelatedInstanceList());
95         assertNotEquals(0, details.hashCode());
96
97         SoRequestInfo requestInfo = new SoRequestInfo();
98         details.setRequestInfo(requestInfo);
99         assertEquals(requestInfo, details.getRequestInfo());
100         assertNotEquals(0, details.hashCode());
101
102         SoRequestParameters requestParameters = new SoRequestParameters();
103         details.setRequestParameters(requestParameters);
104         assertEquals(requestParameters, details.getRequestParameters());
105         assertNotEquals(0, details.hashCode());
106
107         SoSubscriberInfo subscriberInfo = new SoSubscriberInfo();
108         details.setSubscriberInfo(subscriberInfo);
109         assertEquals(subscriberInfo, details.getSubscriberInfo());
110         assertNotEquals(0, details.hashCode());
111
112         assertEquals("SORequestDetails [modelInfo=org.onap.policy.so", details.toString().substring(0,  46));
113
114         SoRequestDetails copiedDetails = new SoRequestDetails(details);
115
116         assertEquals(details, details);
117         assertEquals(details, copiedDetails);
118         assertNotEquals(details, null);
119         assertNotEquals(details, (Object) "Hello");
120
121         details.setCloudConfiguration(null);
122         assertNotEquals(details, copiedDetails);
123         copiedDetails.setCloudConfiguration(null);
124         assertEquals(details, copiedDetails);
125         details.setCloudConfiguration(cloudConfiguration);
126         assertNotEquals(details, copiedDetails);
127         copiedDetails.setCloudConfiguration(cloudConfiguration);
128         assertEquals(details, copiedDetails);
129
130         details.setModelInfo(null);
131         assertNotEquals(details, copiedDetails);
132         copiedDetails.setModelInfo(null);
133         assertEquals(details, copiedDetails);
134         details.setModelInfo(modelInfo);
135         assertNotEquals(details, copiedDetails);
136         copiedDetails.setModelInfo(modelInfo);
137         assertEquals(details, copiedDetails);
138
139         details.setRequestInfo(null);
140         assertNotEquals(details, copiedDetails);
141         copiedDetails.setRequestInfo(null);
142         assertEquals(details, copiedDetails);
143         details.setRequestInfo(requestInfo);
144         assertNotEquals(details, copiedDetails);
145         copiedDetails.setRequestInfo(requestInfo);
146         assertEquals(details, copiedDetails);
147
148         details.setRequestParameters(null);
149         assertNotEquals(details, copiedDetails);
150         copiedDetails.setRequestParameters(null);
151         assertEquals(details, copiedDetails);
152         details.setRequestParameters(requestParameters);
153         assertNotEquals(details, copiedDetails);
154         copiedDetails.setRequestParameters(requestParameters);
155         assertEquals(details, copiedDetails);
156
157         details.setSubscriberInfo(null);
158         assertNotEquals(details, copiedDetails);
159         copiedDetails.setSubscriberInfo(null);
160         assertEquals(details, copiedDetails);
161         details.setSubscriberInfo(subscriberInfo);
162         assertNotEquals(details, copiedDetails);
163         copiedDetails.setSubscriberInfo(subscriberInfo);
164         assertEquals(details, copiedDetails);
165
166         details.setRelatedInstanceList(null);
167         assertNotEquals(details, copiedDetails);
168         copiedDetails.setRelatedInstanceList(null);
169         assertEquals(details, copiedDetails);
170         details.setRelatedInstanceList(relatedInstanceList);
171         assertNotEquals(details, copiedDetails);
172         copiedDetails.setRelatedInstanceList(relatedInstanceList);
173         assertEquals(details, copiedDetails);
174     }
175 }