067bdcb7234dd16407c8613e35f04c989795eb8a
[portal/ric-dashboard.git] / dashboard / webapp-backend / src / test / java / org / oransc / ric / portal / dashboard / model / ModelTest.java
1 /*-
2  * ========================LICENSE_START=================================
3  * O-RAN-SC
4  * %%
5  * Copyright (C) 2019 AT&T Intellectual Property
6  * %%
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ========================LICENSE_END===================================
19  */
20 package org.oransc.ric.portal.dashboard.model;
21
22 import java.lang.invoke.MethodHandles;
23 import java.util.ArrayList;
24 import java.util.List;
25
26 import org.junit.Assert;
27 import org.junit.jupiter.api.Assertions;
28 import org.junit.jupiter.api.Test;
29 import org.onap.portalsdk.core.restful.domain.EcompUser;
30 import org.oransc.ric.portal.dashboard.DashboardUserManagerTest;
31 import org.oransc.ric.portal.dashboard.exception.UnknownInstanceException;
32 import org.oransc.ricplt.e2mgr.client.model.GetNodebResponse;
33 import org.oransc.ricplt.e2mgr.client.model.NodebIdentity;
34 import org.slf4j.Logger;
35 import org.slf4j.LoggerFactory;
36
37 public class ModelTest extends AbstractModelTest {
38
39         private static final Logger logger = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
40
41         private void checkAppStats(AppStats m) {
42                 Assert.assertEquals(s1, m.getInstanceKey());
43                 Assert.assertTrue(i1 == m.getStatsDetails().getAppId());
44                 Assert.assertEquals(s2, m.getStatsDetails().getAppName());
45                 Assert.assertEquals(s3, m.getStatsDetails().getMetricUrl());
46         }
47
48         @Test
49         public void testAppStats() {
50                 StatsDetailsTransport n = new StatsDetailsTransport();
51                 n.setAppId(i1);
52                 n.setAppName(s2);
53                 n.setMetricUrl(s3);
54                 AppStats m = new AppStats();
55                 m = new AppStats(s1, n);
56                 m.setInstanceKey(s1);
57                 m.setStatsDetails(n);
58                 checkAppStats(m);
59                 Assert.assertNotEquals(1, m.hashCode());
60                 logger.info(m.toString());
61         }
62
63         private void checkAppTransport(AppTransport m) {
64                 Assert.assertEquals(s1, m.getName());
65                 Assert.assertEquals(s2, m.getVersion());
66         }
67
68         @Test
69         public void testAppTransport() {
70                 AppTransport m = new AppTransport(s1);
71                 m = new AppTransport();
72                 m.setName(s1);
73                 m.setVersion(s2);
74                 checkAppTransport(m);
75                 logger.info(m.toString());
76         }
77
78         @Test
79         public void testEcompUserDetails() {
80                 EcompUser eu = DashboardUserManagerTest.createEcompUser("lgid");
81                 logger.info("EcompUser {}", eu);
82                 EcompUserDetails eud = new EcompUserDetails(eu);
83                 Assert.assertNotNull(eud.getAuthorities());
84                 Assert.assertNull(eud.getPassword());
85                 Assert.assertNotNull(eud.getUsername());
86                 Assert.assertTrue(eud.isAccountNonExpired());
87                 Assert.assertTrue(eud.isAccountNonLocked());
88                 Assert.assertTrue(eud.isCredentialsNonExpired());
89                 Assert.assertTrue(eud.isEnabled());
90                 logger.info(eud.toString());
91         }
92
93         private void checkInstanceTransport(RicInstanceKeyName m) {
94                 Assert.assertEquals(s1, m.getKey());
95                 Assert.assertEquals(s2, m.getName());
96         }
97
98         @Test
99         public void testInstanceTransport() {
100                 RicInstanceKeyName m = new RicInstanceKeyName(s1, s1);
101                 m = new RicInstanceKeyName();
102                 m.setKey(s1);
103                 m.setName(s2);
104                 checkInstanceTransport(m);
105                 logger.info(m.toString());
106         }
107
108         @Test
109         public void testRanDetailsTransport() {
110                 RanDetailsTransport m = new RanDetailsTransport();
111                 NodebIdentity nodebIdentity = new NodebIdentity();
112                 GetNodebResponse nodebResponse = new GetNodebResponse();
113                 m = new RanDetailsTransport(nodebIdentity, nodebResponse);
114                 Assert.assertEquals(m.getNodebIdentity(), nodebIdentity);
115                 Assert.assertEquals(m.getNodebStatus(), nodebResponse);
116                 m.nodebIdentity(nodebIdentity).nodebStatus(nodebResponse);
117                 Assert.assertEquals(m.getNodebIdentity(), nodebIdentity);
118                 Assert.assertEquals(m.getNodebStatus(), nodebResponse);
119                 logger.debug(m.toString());
120         }
121
122         private void checkSuccessTransport(SuccessTransport m) {
123                 Assert.assertEquals(s1, m.getData());
124                 Assert.assertEquals(1, m.getStatus());
125         }
126
127         @Test
128         public void testSuccessTransport() {
129                 SuccessTransport m = new SuccessTransport(1, s1);
130                 m = new SuccessTransport();
131                 m.setData(s1);
132                 m.setStatus(1);
133                 checkSuccessTransport(m);
134                 logger.info(m.toString());
135         }
136
137         private void checkRicInstanceKeyName(RicInstanceKeyName m) {
138                 Assert.assertEquals(s1, m.getKey());
139                 Assert.assertEquals(s2, m.getName());
140         }
141
142         @Test
143         public void testRicInstanceKeyName() {
144                 RicInstanceKeyName m = new RicInstanceKeyName(s1, s1);
145                 m = new RicInstanceKeyName();
146                 m.setKey(s1);
147                 m.setName(s2);
148                 checkRicInstanceKeyName(m);
149                 Assert.assertTrue(m.equals(m));
150                 Assert.assertFalse(m.equals(null));
151                 Assert.assertFalse(m.equals(new RicInstanceKeyName()));
152                 Assert.assertNotEquals(1, m.hashCode());
153                 logger.info(m.toString());
154         }
155
156         private void checkRicInstance(RicInstance m) {
157                 Assert.assertEquals(s1, m.getAppUrlPrefix());
158                 Assert.assertEquals(s2, m.getCaasUrlPrefix());
159                 Assert.assertEquals(s3, m.getKey());
160                 Assert.assertEquals(s4, m.getName());
161         }
162
163         @Test
164         public void testRicInstance() {
165                 RicInstance m = new RicInstance();
166                 m.setAppUrlPrefix(s1);
167                 m.setCaasUrlPrefix(s2);
168                 m.setKey(s3);
169                 m.setName(s4);
170                 checkRicInstance(m);
171                 Assert.assertTrue(m.equals(m));
172                 Assert.assertFalse(m.equals(null));
173                 Assert.assertFalse(m.equals(new RicInstance()));
174                 Assert.assertNotEquals(1, m.hashCode());
175                 logger.info(m.toString());
176         }
177
178         private void checkRicRegion(RicRegion m) {
179                 Assert.assertEquals(s1, m.getName());
180         }
181
182         @Test
183         public void testRicRegion() {
184                 RicRegion m = new RicRegion();
185                 m.setName(s1);
186                 checkRicRegion(m);
187                 Assert.assertTrue(m.equals(m));
188                 Assert.assertFalse(m.equals(null));
189                 Assert.assertFalse(m.equals(new RicRegion()));
190                 Assert.assertNotEquals(1, m.hashCode());
191                 logger.info(m.toString());
192         }
193
194         @Test
195         public void testRicRegionList() {
196                 new RicRegionList();
197                 List<RicRegion> list = new ArrayList<>();
198                 final RicRegionList m = new RicRegionList(list);
199                 Assert.assertEquals(list, m.getRegions());
200                 Assert.assertNotNull(m.getSimpleInstances());
201                 Assertions.assertThrows(UnknownInstanceException.class, () -> {
202                         m.getInstance(s1);
203                 });
204                 logger.info(m.toString());
205         }
206
207         private void checkRicRegionTransport(RicRegionTransport m) {
208                 Assert.assertEquals(s1, m.getName());
209                 Assert.assertFalse(m.getInstances().isEmpty());
210         }
211
212         @Test
213         public void testRicRegionTransport() {
214                 RicRegionTransport m = new RicRegionTransport().name(s1);
215                 m.instances(new ArrayList<RicInstanceKeyName>());
216                 m.getInstances().add(new RicInstanceKeyName(s1, s2));
217                 checkRicRegionTransport(m);
218                 Assert.assertTrue(m.equals(m));
219                 Assert.assertFalse(m.equals(null));
220                 Assert.assertFalse(m.equals(new RicRegionTransport()));
221                 Assert.assertNotEquals(1, m.hashCode());
222                 logger.info(m.toString());
223         }
224
225         private void checkStatsDetailsTransport(StatsDetailsTransport m) {
226                 Assert.assertTrue(i1 == m.getAppId());
227                 Assert.assertEquals(s1, m.getAppName());
228                 Assert.assertEquals(s2, m.getMetricUrl());
229         }
230
231         @Test
232         public void testStatDetailsTransport() {
233                 StatsDetailsTransport m = new StatsDetailsTransport();
234                 m.setAppId(i1);
235                 m.setAppName(s1);
236                 m.setMetricUrl(s2);
237                 checkStatsDetailsTransport(m);
238                 Assert.assertTrue(m.equals(m));
239                 Assert.assertFalse(m.equals(null));
240                 Assert.assertFalse(m.equals(new StatsDetailsTransport()));
241                 Assert.assertNotEquals(1, m.hashCode());
242                 logger.info(m.toString());
243         }
244
245 }