b392b6f5a635234bfea59c6144099e8a13071c88
[policy/engine.git] / ONAP-REST / src / test / java / org / onap / policy / rest / jpa / PolicyEntityJpaTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP-REST
4  * ================================================================================
5  * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
6  * Modifications Copyright (C) 2019 Nordix Foundation.
7  * ================================================================================
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  *      http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  * ============LICENSE_END=========================================================
20  */
21
22 package org.onap.policy.rest.jpa;
23
24 import static org.junit.Assert.assertFalse;
25 import static org.junit.Assert.assertNotNull;
26 import static org.junit.Assert.assertNull;
27 import static org.junit.Assert.assertTrue;
28
29 import java.util.Date;
30
31 import org.junit.Before;
32 import org.junit.Test;
33 import org.onap.policy.common.logging.flexlogger.FlexLogger;
34 import org.onap.policy.common.logging.flexlogger.Logger;
35
36 /**
37  * The Class PolicyEntityJpaTest.
38  */
39 public class PolicyEntityJpaTest {
40
41     private static Logger logger = FlexLogger.getLogger(PolicyEntityJpaTest.class);
42     private UserInfo userInfo;
43
44     /**
45      * Sets the up.
46      *
47      * @throws Exception the exception
48      */
49     @Before
50     public void setUp() throws Exception {
51         logger.info("setUp: Entering");
52         userInfo = new UserInfo();
53         userInfo.setUserLoginId("Test");
54         userInfo.setUserName("Test");
55         logger.info("setUp: exit");
56     }
57
58     /**
59      * Test policy group entity.
60      */
61     @Test
62     public void testPolicyGroupEntity() {
63         PolicyGroupEntity data = new PolicyGroupEntity();
64         data.setGroupKey(1);
65         assertTrue(1 == data.getGroupKey());
66         data.setPolicyid(1);
67         assertTrue(1 == data.getPolicyid());
68     }
69
70     /**
71      * Test policy DB dao entity.
72      */
73     @Test
74     public void testPolicyDbDaoEntity() {
75         PolicyDbDaoEntity data = new PolicyDbDaoEntity();
76         data.prePersist();
77         data.preUpdate();
78         data.setPolicyDbDaoUrl("Test");
79         assertTrue("Test".equals(data.getPolicyDbDaoUrl()));
80         data.setDescription("Test");
81         assertTrue("Test".equals(data.getDescription()));
82         assertTrue(data.getCreatedDate() != null);
83         assertTrue(data.getModifiedDate() != null);
84         data.setUsername("Test");
85         assertTrue("Test".equals(data.getUsername()));
86         data.setPassword("Test");
87         assertTrue("Test".equals(data.getPassword()));
88     }
89
90     /**
91      * Test database lock entity.
92      */
93     @Test
94     public void testDatabaseLockEntity() {
95         DatabaseLockEntity data = new DatabaseLockEntity();
96         data.setKey(1);
97         assertTrue(1 == data.getKey());
98     }
99
100     /**
101      * Test policy entity.
102      */
103     @Test
104     public void testPolicyEntity() {
105         PolicyEntity data = new PolicyEntity();
106         data.prePersist();
107         data.preUpdate();
108         data.setPolicyName("Test");
109         assertTrue("Test".equals(data.getPolicyName()));
110         data.setDescription("Test");
111         assertTrue("Test".equals(data.getDescription()));
112         assertTrue(data.getCreatedDate() != null);
113         assertTrue(data.getModifiedDate() != null);
114         data.setPolicyData("Test");
115         assertTrue("Test".equals(data.getPolicyData()));
116         data.setConfigurationData(new ConfigurationDataEntity());
117         assertTrue(data.getConfigurationData() != null);
118         data.setActionBodyEntity(new ActionBodyEntity());
119         assertTrue(data.getActionBodyEntity() != null);
120         data.setScope("Test");
121         assertTrue("Test".equals(data.getScope()));
122         data.setCreatedBy("Test");
123         assertTrue("Test".equals(data.getCreatedBy()));
124         data.setModifiedBy("Test");
125         assertTrue("Test".equals(data.getModifiedBy()));
126         data.setDeleted(true);
127         assertTrue(data.isDeleted());
128         data.equals(new PolicyEntity());
129         data.hashCode();
130
131         PolicyEntity entity0 = new PolicyEntity();
132         PolicyEntity entity1 = new PolicyEntity();
133         assertTrue(entity0.equals(entity0));
134         assertTrue(entity0.equals(entity1));
135         assertFalse(entity0.equals(null));
136         String helloString = "Hello";
137         Object helloObject = helloString;
138         assertFalse(entity0.equals(helloObject));
139
140         entity0.setPolicyId(1);
141         assertFalse(entity0.equals(entity1));
142         entity1.setPolicyId(1);
143         assertTrue(entity0.equals(entity1));
144         entity0.setPolicyId(2);
145         assertFalse(entity0.equals(entity1));
146         entity1.setPolicyId(2);
147         assertTrue(entity0.equals(entity1));
148
149         entity0.setPolicyName("GoToOz");
150         assertFalse(entity0.equals(entity1));
151         entity1.setPolicyName("GoToOz");
152         assertTrue(entity0.equals(entity1));
153         entity1.setPolicyName(null);
154         assertFalse(entity0.equals(entity1));
155         entity0.setPolicyName(null);
156         assertTrue(entity0.equals(entity1));
157         entity1.setPolicyName("GoToOz");
158         assertFalse(entity0.equals(entity1));
159         entity0.setPolicyName("GoToOz");
160         assertTrue(entity0.equals(entity1));
161         entity1.setPolicyName("GoToOzNow");
162         assertFalse(entity0.equals(entity1));
163         entity0.setPolicyName("GoToOzNow");
164         assertTrue(entity0.equals(entity1));
165
166         entity0.setScope("All");
167         assertFalse(entity0.equals(entity1));
168         entity1.setScope("All");
169         assertTrue(entity0.equals(entity1));
170         entity1.setScope(null);
171         assertFalse(entity0.equals(entity1));
172         entity0.setScope(null);
173         assertTrue(entity0.equals(entity1));
174         entity1.setScope("All");
175         assertFalse(entity0.equals(entity1));
176         entity0.setScope("All");
177         assertTrue(entity0.equals(entity1));
178         entity1.setScope("AllIn");
179         assertFalse(entity0.equals(entity1));
180         entity0.setScope("AllIn");
181         assertTrue(entity0.equals(entity1));
182
183         entity0.setVersion(1);
184         assertFalse(entity0.equals(entity1));
185         entity1.setVersion(1);
186         assertTrue(entity0.equals(entity1));
187
188         entity0.setPolicyVersion(1);
189         assertFalse(entity0.equals(entity1));
190         entity1.setPolicyVersion(1);
191         assertTrue(entity0.equals(entity1));
192         entity0.setPolicyVersion(2);
193         assertFalse(entity0.equals(entity1));
194         entity1.setPolicyVersion(2);
195         assertTrue(entity0.equals(entity1));
196
197         entity0.setPolicyData("SomeData");
198         assertFalse(entity0.equals(entity1));
199         entity1.setPolicyData("SomeData");
200         assertTrue(entity0.equals(entity1));
201         entity1.setPolicyData(null);
202         assertFalse(entity0.equals(entity1));
203         entity0.setPolicyData(null);
204         assertTrue(entity0.equals(entity1));
205         entity1.setPolicyData("SomeData");
206         assertFalse(entity0.equals(entity1));
207         entity0.setPolicyData("SomeData");
208         assertTrue(entity0.equals(entity1));
209         entity1.setPolicyData("SomeMoreData");
210         assertFalse(entity0.equals(entity1));
211         entity0.setPolicyData("SomeMoreData");
212         assertTrue(entity0.equals(entity1));
213
214         ConfigurationDataEntity cde0 = new ConfigurationDataEntity();
215         entity0.setConfigurationDataEntity(cde0);
216         assertFalse(entity0.equals(entity1));
217         entity1.setConfigurationDataEntity(cde0);
218         assertTrue(entity0.equals(entity1));
219         entity1.setConfigurationDataEntity(null);
220         assertFalse(entity0.equals(entity1));
221         entity0.setConfigurationDataEntity(null);
222         assertTrue(entity0.equals(entity1));
223         ConfigurationDataEntity cde1 = new ConfigurationDataEntity();
224         entity1.setConfigurationDataEntity(cde1);
225         assertFalse(entity0.equals(entity1));
226         entity0.setConfigurationDataEntity(cde1);
227         assertTrue(entity0.equals(entity1));
228
229         ActionBodyEntity abe0 = new ActionBodyEntity();
230         entity0.setActionBodyEntity(abe0);
231         assertFalse(entity0.equals(entity1));
232         entity1.setActionBodyEntity(abe0);
233         assertTrue(entity0.equals(entity1));
234         entity1.setActionBodyEntity(null);
235         assertFalse(entity0.equals(entity1));
236         entity0.setActionBodyEntity(null);
237         assertTrue(entity0.equals(entity1));
238         entity1.setActionBodyEntity(abe0);
239         assertFalse(entity0.equals(entity1));
240         entity0.setActionBodyEntity(abe0);
241         assertTrue(entity0.equals(entity1));
242         ActionBodyEntity abe1 = new ActionBodyEntity();
243         entity1.setActionBodyEntity(abe1);
244         assertFalse(entity0.equals(entity1));
245         entity0.setActionBodyEntity(abe1);
246         assertTrue(entity0.equals(entity1));
247
248         entity0.setDescription("Description");
249         assertFalse(entity0.equals(entity1));
250         entity1.setDescription("Description");
251         assertTrue(entity0.equals(entity1));
252         entity1.setDescription(null);
253         assertFalse(entity0.equals(entity1));
254         entity0.setDescription(null);
255         assertTrue(entity0.equals(entity1));
256         entity1.setDescription("Description");
257         assertFalse(entity0.equals(entity1));
258         entity0.setDescription("Description");
259         assertTrue(entity0.equals(entity1));
260         assertTrue(entity0.equals(entity1));
261         entity1.setDescription("Description Extra");
262         assertFalse(entity0.equals(entity1));
263         entity0.setDescription("Description Extra");
264         assertTrue(entity0.equals(entity1));
265
266         entity0.setDeleted(true);
267         assertFalse(entity0.equals(entity1));
268         entity1.setDeleted(true);
269         assertTrue(entity0.equals(entity1));
270         entity0.setDeleted(false);
271         assertFalse(entity0.equals(entity1));
272         entity1.setDeleted(false);
273         assertTrue(entity0.equals(entity1));
274
275         entity0.setDeleteReasonCode("NoReason");
276         assertFalse(entity0.equals(entity1));
277         entity1.setDeleteReasonCode("NoReason");
278         assertTrue(entity0.equals(entity1));
279         entity1.setDeleteReasonCode(null);
280         assertFalse(entity0.equals(entity1));
281         entity0.setDeleteReasonCode(null);
282         assertTrue(entity0.equals(entity1));
283         entity1.setDeleteReasonCode("NoReason");
284         assertFalse(entity0.equals(entity1));
285         entity0.setDeleteReasonCode("NoReason");
286         assertTrue(entity0.equals(entity1));
287         assertTrue(entity0.equals(entity1));
288         entity1.setDeleteReasonCode("NoOtherReason");
289         assertFalse(entity0.equals(entity1));
290         entity0.setDeleteReasonCode("NoOtherReason");
291         assertTrue(entity0.equals(entity1));
292
293         entity0.setCreatedBy("Dorothy");
294         assertFalse(entity0.equals(entity1));
295         entity1.setCreatedBy("Dorothy");
296         assertTrue(entity0.equals(entity1));
297         entity1.setCreatedBy(null);
298         assertFalse(entity0.equals(entity1));
299         entity0.setCreatedBy(null);
300         assertTrue(entity0.equals(entity1));
301         entity1.setCreatedBy("Dorothy");
302         assertFalse(entity0.equals(entity1));
303         entity0.setCreatedBy("Dorothy");
304         assertTrue(entity0.equals(entity1));
305         entity1.setCreatedBy("Toto");
306         assertFalse(entity0.equals(entity1));
307         entity0.setCreatedBy("Toto");
308         assertTrue(entity0.equals(entity1));
309
310         entity0.setCreatedDate(new Date(12345L));
311         assertFalse(entity0.equals(entity1));
312         entity1.setCreatedDate(new Date(12345L));
313         assertTrue(entity0.equals(entity1));
314         entity1.setCreatedDate(null);
315         assertFalse(entity0.equals(entity1));
316         entity0.setCreatedDate(null);
317         assertTrue(entity0.equals(entity1));
318         entity1.setCreatedDate(new Date(12345L));
319         assertFalse(entity0.equals(entity1));
320         entity0.setCreatedDate(new Date(12345L));
321         assertTrue(entity0.equals(entity1));
322         assertTrue(entity0.equals(entity1));
323         entity1.setCreatedDate(new Date(123456L));
324         assertFalse(entity0.equals(entity1));
325         entity0.setCreatedDate(new Date(123456L));
326         assertTrue(entity0.equals(entity1));
327
328         entity0.setModifiedBy("Dorothy");
329         assertFalse(entity0.equals(entity1));
330         entity1.setModifiedBy("Dorothy");
331         assertTrue(entity0.equals(entity1));
332         entity1.setModifiedBy(null);
333         assertFalse(entity0.equals(entity1));
334         entity0.setModifiedBy(null);
335         assertTrue(entity0.equals(entity1));
336         entity1.setModifiedBy("Dorothy");
337         assertFalse(entity0.equals(entity1));
338         entity0.setModifiedBy("Dorothy");
339         assertTrue(entity0.equals(entity1));
340         entity1.setModifiedBy("Toto");
341         assertFalse(entity0.equals(entity1));
342         entity0.setModifiedBy("Toto");
343         assertTrue(entity0.equals(entity1));
344
345         entity0.setModifiedDate(new Date(12345L));
346         assertFalse(entity0.equals(entity1));
347         entity1.setModifiedDate(new Date(12345L));
348         assertTrue(entity0.equals(entity1));
349         entity1.setModifiedDate(null);
350         assertFalse(entity0.equals(entity1));
351         entity0.setModifiedDate(null);
352         assertTrue(entity0.equals(entity1));
353         entity1.setModifiedDate(new Date(12345L));
354         assertFalse(entity0.equals(entity1));
355         entity0.setModifiedDate(new Date(12345L));
356         assertTrue(entity0.equals(entity1));
357         assertTrue(entity0.equals(entity1));
358         entity1.setModifiedDate(new Date(123456L));
359         assertFalse(entity0.equals(entity1));
360         entity0.setModifiedDate(new Date(123456L));
361         assertTrue(entity0.equals(entity1));
362
363         entity0.setDeletedBy("Dorothy");
364         assertFalse(entity0.equals(entity1));
365         entity1.setDeletedBy("Dorothy");
366         assertTrue(entity0.equals(entity1));
367         entity1.setDeletedBy(null);
368         assertFalse(entity0.equals(entity1));
369         entity0.setDeletedBy(null);
370         assertTrue(entity0.equals(entity1));
371         entity1.setDeletedBy("Dorothy");
372         assertFalse(entity0.equals(entity1));
373         entity0.setDeletedBy("Dorothy");
374         assertTrue(entity0.equals(entity1));
375         assertTrue(entity0.equals(entity1));
376         entity1.setDeletedBy("Toto");
377         assertFalse(entity0.equals(entity1));
378         entity0.setDeletedBy("Toto");
379         assertTrue(entity0.equals(entity1));
380
381         assertNotNull(entity0.hashCode());
382         assertNotNull(entity1.hashCode());
383     }
384
385     /**
386      * Test action body entity.
387      */
388     @Test
389     public void testActionBodyEntity() {
390         ActionBodyEntity data = new ActionBodyEntity();
391         data.prePersist();
392         data.preUpdate();
393         data.setActionBodyName("Test");
394         assertTrue("Test".equals(data.getActionBodyName()));
395         data.setActionBody("Test");
396         assertTrue("Test".equals(data.getActionBody()));
397         data.setCreatedBy("Test");
398         assertTrue("Test".equals(data.getCreatedBy()));
399         data.setModifiedBy("Test");
400         assertTrue("Test".equals(data.getModifiedBy()));
401         data.setModifiedDate(new Date());
402         assertTrue(data.getCreatedDate() != null);
403         assertTrue(data.getModifiedDate() != null);
404         data.setDeleted(true);
405         assertTrue(data.isDeleted());
406         assertTrue(data.getCreatedDate() != null);
407         assertTrue(data.getModifiedDate() != null);
408         data.equals(new ConfigurationDataEntity());
409         data.hashCode();
410     }
411
412     /**
413      * Test configuration data entity.
414      */
415     @Test
416     public void testConfigurationDataEntity() {
417         ConfigurationDataEntity data = new ConfigurationDataEntity();
418         data.prePersist();
419         data.preUpdate();
420         data.setConfigurationName("Test");
421         assertTrue("Test".equals(data.getConfigurationName()));
422         data.setConfigType("Test");
423         assertTrue("Test".equals(data.getConfigType()));
424         data.setConfigBody("Test");
425         assertTrue("Test".equals(data.getConfigBody()));
426         data.setCreatedBy("Test");
427         assertTrue("Test".equals(data.getCreatedBy()));
428         data.setDescription("Test");
429         assertTrue("Test".equals(data.getDescription()));
430         data.setModifiedBy("Test");
431         assertTrue("Test".equals(data.getModifiedBy()));
432         data.setModifiedDate(new Date());
433         assertTrue(data.getCreatedDate() != null);
434         assertTrue(data.getModifiedDate() != null);
435         data.setDeleted(true);
436         assertTrue(data.isDeleted());
437         assertTrue(data.getCreatedDate() != null);
438         assertTrue(data.getModifiedDate() != null);
439         data.equals(new ConfigurationDataEntity());
440         data.hashCode();
441     }
442
443     /**
444      * Test pdp entity.
445      */
446     @Test
447     public void testPdpEntity() {
448         PdpEntity data = new PdpEntity();
449         data.prePersist();
450         data.preUpdate();
451         data.setPdpId("Test");
452         assertTrue("Test".equals(data.getPdpId()));
453         data.setPdpName("Test");
454         assertTrue("Test".equals(data.getPdpName()));
455         data.setGroup(new GroupEntity());
456         assertTrue(data.getGroup() != null);
457         data.setCreatedBy("Test");
458         assertTrue("Test".equals(data.getCreatedBy()));
459         data.setDescription("Test");
460         assertTrue("Test".equals(data.getDescription()));
461         data.setModifiedBy("Test");
462         assertTrue("Test".equals(data.getModifiedBy()));
463         data.setJmxPort(1);
464         assertTrue(1 == data.getJmxPort());
465         data.setDeleted(true);
466         assertTrue(data.isDeleted());
467         assertTrue(data.getCreatedDate() != null);
468         assertTrue(data.getModifiedDate() != null);
469     }
470
471     /**
472      * Test group entity.
473      */
474     @Test
475     public void testGroupEntity() {
476         GroupEntity data = new GroupEntity();
477         data.prePersist();
478         data.preUpdate();
479         data.setGroupId("Test");
480         assertTrue("Test".equals(data.getGroupId()));
481         data.setGroupName("Test");
482         assertTrue("Test".equals(data.getGroupName()));
483         data.setCreatedBy("Test");
484         assertTrue("Test".equals(data.getCreatedBy()));
485         data.setDescription("Test");
486         assertTrue("Test".equals(data.getDescription()));
487         data.setModifiedBy("Test");
488         assertTrue("Test".equals(data.getModifiedBy()));
489         data.setDefaultGroup(true);
490         assertTrue(data.isDefaultGroup());
491         data.setDeleted(true);
492         assertTrue(data.isDeleted());
493         assertTrue(data.getCreatedDate() != null);
494         assertTrue(data.getModifiedDate() != null);
495
496         assertNull(data.getPolicies());
497         PolicyEntity policy0 = new PolicyEntity();
498         policy0.setPolicyName("PolicyName0");
499         data.addPolicyToGroup(policy0);
500         PolicyEntity policy1 = new PolicyEntity();
501         policy1.setPolicyName("PolicyName1");
502         assertTrue(data.getPolicies().contains(policy0));
503         assertFalse(data.getPolicies().contains(policy1));
504         data.addPolicyToGroup(policy1);
505         assertTrue(data.getPolicies().contains(policy0));
506         assertTrue(data.getPolicies().contains(policy1));
507         data.addPolicyToGroup(policy1);
508         assertTrue(data.getPolicies().contains(policy0));
509         assertTrue(data.getPolicies().contains(policy1));
510         data.removePolicyFromGroup(policy0);
511         assertFalse(data.getPolicies().contains(policy0));
512         assertTrue(data.getPolicies().contains(policy1));
513         data.removePolicyFromGroup(policy0);
514         assertFalse(data.getPolicies().contains(policy0));
515         assertTrue(data.getPolicies().contains(policy1));
516         data.removePolicyFromGroup(policy1);
517         assertNull(data.getPolicies());
518     }
519 }