JUnit/SONAR/Checkstyle in ONAP-REST
[policy/engine.git] / ONAP-REST / src / test / java / org / onap / policy / rest / jpa / ActionDictionaryJpaTest.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.assertEquals;
25 import static org.junit.Assert.assertFalse;
26 import static org.junit.Assert.assertNull;
27 import static org.junit.Assert.assertTrue;
28
29 import com.att.research.xacml.api.Identifier;
30
31 import java.util.ArrayList;
32 import java.util.Date;
33 import java.util.HashSet;
34
35 import org.junit.Before;
36 import org.junit.Test;
37 import org.onap.policy.common.logging.flexlogger.FlexLogger;
38 import org.onap.policy.common.logging.flexlogger.Logger;
39
40 public class ActionDictionaryJpaTest {
41
42     private static Logger logger = FlexLogger.getLogger(ActionDictionaryJpaTest.class);
43     private UserInfo userInfo;
44
45     /**
46      * Set up the test.
47      *
48      * @throws Exception on test errors
49      */
50     @Before
51     public void setUp() throws Exception {
52         logger.info("setUp: Entering");
53         userInfo = new UserInfo();
54         userInfo.setUserLoginId("Test");
55         userInfo.setUserName("Test");
56         logger.info("setUp: exit");
57     }
58
59     @Test
60     public void testActionDictionary() {
61         ActionPolicyDict data = new ActionPolicyDict();
62         data.setId(1);
63         assertTrue(1 == data.getId());
64         data.setAttributeName("Test");
65         assertTrue("Test".equals(data.getAttributeName()));
66         data.setDescription("Test");
67         assertTrue("Test".equals(data.getDescription()));
68         data.setBody("Test");
69         assertTrue("Test".equals(data.getBody()));
70         data.setHeader("Test");
71         assertTrue("Test".equals(data.getHeader()));
72         data.setMethod("GET");
73         assertTrue("GET".equals(data.getMethod()));
74         data.setType("JSON");
75         assertTrue("JSON".equals(data.getType()));
76         data.setUrl("http://test.com");
77         assertTrue("http://test.com".equals(data.getUrl()));
78         data.prePersist();
79         data.preUpdate();
80         data.setCreatedDate(new Date());
81         assertTrue(data.getCreatedDate() != null);
82         data.setModifiedDate(new Date());
83         assertTrue(data.getModifiedDate() != null);
84         data.setUserCreatedBy(userInfo);
85         assertTrue(data.getUserCreatedBy() != null);
86         data.setUserModifiedBy(userInfo);
87         assertTrue(data.getUserModifiedBy() != null);
88     }
89
90     @Test
91     public void testFunctionArgument() {
92         FunctionArgument data = new FunctionArgument();
93         data.setArgIndex(1);
94         assertTrue(1 == data.getArgIndex());
95         data.setDatatypeBean(new Datatype());
96         assertTrue(data.getDatatypeBean() != null);
97         data.setFunctionDefinition(new FunctionDefinition());
98         assertTrue(data.getFunctionDefinition() != null);
99         data.setId(1);
100         assertTrue(1 == data.getId());
101         data.isBag();
102         data.toString();
103         data.setIsBag(1);
104         assertTrue(1 == data.getIsBag());
105         new FunctionArgument(data);
106     }
107
108     @Test
109     public void testFunctionDefinition() {
110         FunctionDefinition data = new FunctionDefinition();
111         data.setArgLb(1);
112         assertTrue(1 == data.getArgLb());
113         data.setArgUb(1);
114         assertTrue(1 == data.getArgUb());
115         data.setDatatypeBean(new Datatype());
116         assertTrue(data.getDatatypeBean() != null);
117         data.setFunctionArguments(new ArrayList<>());
118         assertTrue(data.getFunctionArguments() != null);
119         data.setHigherOrderArg_LB(1);
120         assertTrue(1 == data.getHigherOrderArg_LB());
121         data.setHigherOrderArg_UB(1);
122         assertTrue(1 == data.getHigherOrderArg_UB());
123         data.setId(1);
124         assertTrue(1 == data.getId());
125         data.setIsBagReturn(1);
126         assertTrue(1 == data.getIsBagReturn());
127         data.setIsHigherOrder(1);
128         assertTrue(1 == data.getIsHigherOrder());
129         data.setShortname("Test");
130         assertTrue("Test".equals(data.getShortname()));
131         data.setXacmlid("Test");
132         assertTrue("Test".equals(data.getXacmlid()));
133         data.toString();
134         data.isBagReturn();
135         data.isHigherOrder();
136         data.addFunctionArgument(new FunctionArgument());
137         data.removeFunctionArgument(new FunctionArgument());
138     }
139
140     @Test
141     public void testCategory() {
142         Category data = new Category();
143         new Category(null);
144         data.setAttributes(new HashSet<>());
145         data.addAttribute(new Attribute());
146         data.removeAttribute(new Attribute());
147         data.isStandard();
148         data.isCustom();
149         data.getIdentifer();
150         data.toString();
151         assertTrue(data.getAttributes() != null);
152         data.setGrouping("Test");
153         assertTrue("Test".equals(data.getGrouping()));
154         data.setId(1);
155         assertTrue(1 == data.getId());
156         data.setShortName("Test");
157         assertTrue("Test".equals(data.getShortName()));
158         data.setXacmlId("Test");
159         assertTrue("Test".equals(data.getXacmlId()));
160
161         data.setIsStandard(Category.STANDARD);
162         assertEquals(Category.STANDARD, data.getIsStandard());
163         assertTrue(data.isStandard());
164         assertFalse(data.isCustom());
165
166         data.setIsStandard(Category.CUSTOM);
167         assertEquals(Category.CUSTOM, data.getIsStandard());
168         assertFalse(data.isStandard());
169         assertTrue(data.isCustom());
170
171         Identifier categoryIdentifier = new DummyIdentifier();
172         Category data2 = new Category(categoryIdentifier,
173                         "urn:oasis:names:tc:xacml:1.0:subject-category:intermediary-subject", Category.STANDARD);
174         assertEquals(DummyIdentifier.class.getName(), data2.getIdentifer().stringValue());
175
176         Category data3 = new Category(categoryIdentifier,
177                         "urn:oasis:names:tc:xacml:1.0:subject-category:intermediary-subject");
178         assertEquals(DummyIdentifier.class.getName(), data3.getIdentifer().stringValue());
179
180         assertEquals("subject",
181                         Category.extractGrouping("urn:oasis:names:tc:xacml:1.0:subject-category:intermediary-subject"));
182         assertNull(Category.extractGrouping(null));
183         assertNull(Category.extractGrouping("some random string"));
184         assertNull(Category.extractGrouping(""));
185         assertEquals("intermediary-attribute", Category
186                         .extractGrouping("urn:oasis:names:tc:xacml:1.0:attribute-category:intermediary-attribute"));
187     }
188
189     @Test
190     public void testConstraintType() {
191         ConstraintType data = new ConstraintType();
192         new ConstraintType("Test", "Test");
193         ConstraintType.getRangeTypes();
194         data.setAttributes(new HashSet<>());
195         assertTrue(data.getAttributes() != null);
196         data.setConstraintType("Test");
197         assertTrue("Test".equals(data.getConstraintType()));
198         data.setDescription("Test");
199         assertTrue("Test".equals(data.getDescription()));
200         data.setId(1);
201         assertTrue(1 == data.getId());
202     }
203
204     @Test
205     public void testConstraintValue() {
206         ConstraintValue data = new ConstraintValue();
207         data.clone();
208         new ConstraintValue(new ConstraintValue());
209         new ConstraintValue("Test", "Test");
210         data.setAttribute(new Attribute());
211         assertTrue(data.getAttribute() != null);
212         data.setId(1);
213         assertTrue(1 == data.getId());
214         data.setProperty("Test");
215         assertTrue("Test".equals(data.getProperty()));
216         data.setValue("Test");
217         assertTrue("Test".equals(data.getValue()));
218     }
219
220     @Test
221     public void testObadvice() {
222         Obadvice data = new Obadvice();
223         new Obadvice();
224         new Obadvice("Test", "Test");
225         data.clone();
226         data.addObadviceExpression(new ObadviceExpression());
227         data.removeObadviceExpression(new ObadviceExpression());
228         data.removeAllExpressions();
229         data.prePersist();
230         data.preUpdate();
231         data.setId(1);
232         assertTrue(1 == data.getId());
233         data.setCreatedBy("Test");
234         assertTrue("Test".equals(data.getCreatedBy()));
235         data.setDescription("Test");
236         assertTrue("Test".equals(data.getDescription()));
237         data.setFulfillOn("Test");
238         assertTrue("Test".equals(data.getFulfillOn()));
239         data.setModifiedBy("Test");
240         assertTrue("Test".equals(data.getModifiedBy()));
241         data.setObadviceExpressions(new HashSet<>());
242         assertTrue(data.getObadviceExpressions() != null);
243         data.setType("Test");
244         assertTrue("Test".equals(data.getType()));
245         data.setXacmlId("Test");
246         assertTrue("Test".equals(data.getXacmlId()));
247     }
248
249     @Test
250     public void testObadviceExpression() {
251         ObadviceExpression data = new ObadviceExpression();
252         data.clone();
253         data.setAttribute(new Attribute());
254         assertTrue(data.getAttribute() != null);
255         data.setId(1);
256         assertTrue(1 == data.getId());
257         data.setObadvice(new Obadvice());
258         assertTrue(data.getObadvice() != null);
259         data.setType("Test");
260         assertTrue("Test".equals(data.getType()));
261     }
262
263     @Test
264     public void testRuleAlgorithms() {
265         RuleAlgorithms data = new RuleAlgorithms();
266         data.isCustom();
267         data.isStandard();
268         data.setId(1);
269         assertTrue(1 == data.getId());
270         data.setShortName("Test");
271         assertTrue("Test".equals(data.getShortName()));
272         data.setXacmlId("Test");
273         assertTrue("Test".equals(data.getXacmlId()));
274         data.toString();
275     }
276
277     @Test
278     public void testAttributeAssignment() {
279         AttributeAssignment data = new AttributeAssignment();
280         data.setId(1);
281         assertTrue(1 == data.getId());
282         data.setAttributeId(1);
283         assertTrue(1 == data.getAttributeId());
284         data.setExpression("Test");
285         assertTrue("Test".equals(data.getExpression()));
286     }
287
288     @Test
289     public void testDatatype() {
290         Datatype data = new Datatype();
291         new Datatype(null);
292         new Datatype(1, new Datatype());
293         data.setArguments(new HashSet<>());
294         assertTrue(data.getArguments() != null);
295         data.setAttributes(new HashSet<>());
296         assertTrue(data.getAttributes() != null);
297         data.setFunctions(new HashSet<>());
298         assertTrue(data.getFunctions() != null);
299         data.setId(1);
300         assertTrue(1 == data.getId());
301         data.setShortName("Test");
302         assertTrue("Test".equals(data.getShortName()));
303         data.setXacmlId("Test");
304         assertTrue("Test".equals(data.getXacmlId()));
305         data.addArgument(new FunctionArgument());
306         data.addAttribute(new Attribute());
307         data.addFunction(new FunctionDefinition());
308         data.removeArgument(new FunctionArgument());
309         data.removeAttribute(new Attribute());
310         data.removeAttribute(new FunctionDefinition());
311         assertTrue(data.getIdentifer() != null);
312         assertTrue(data.getIdentiferByShortName() != null);
313         data.setIsStandard(Datatype.STANDARD);
314         assertTrue(data.isStandard());
315         data.setIsStandard(Datatype.CUSTOM);
316         assertTrue(data.isCustom());
317
318         data.setIsStandard(Category.STANDARD);
319         assertEquals(Category.STANDARD, data.getIsStandard());
320         assertTrue(data.isStandard());
321         assertFalse(data.isCustom());
322
323         data.setIsStandard(Category.CUSTOM);
324         assertEquals(Category.CUSTOM, data.getIsStandard());
325         assertFalse(data.isStandard());
326         assertTrue(data.isCustom());
327
328         Datatype data2 = new Datatype(new DummyIdentifier(), Datatype.STANDARD);
329         assertEquals(DummyIdentifier.class.getName(), data2.getIdentifer().stringValue());
330     }
331
332     @Test
333     public void testPolicyAlgorithms() {
334         PolicyAlgorithms data = new PolicyAlgorithms();
335         data.setId(1);
336         assertTrue(1 == data.getId());
337         data.setShortName("Test");
338         assertTrue("Test".equals(data.getShortName()));
339         data.setXacmlId("Test");
340         assertTrue("Test".equals(data.getXacmlId()));
341         data.setIsStandard(PolicyAlgorithms.STANDARD);
342         assertTrue(data.isStandard());
343     }
344 }