PDPX Healthcheck/Statistic RESTful API entry point
[policy/xacml-pdp.git] / main / src / test / java / org / onap / policy / pdpx / main / parameters / TestXacmlPdpParameterGroup.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
4  * ================================================================================
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  * SPDX-License-Identifier: Apache-2.0
18  * ============LICENSE_END=========================================================
19  */
20
21
22 package org.onap.policy.pdpx.main.parameters;
23
24 import static org.junit.Assert.assertEquals;
25 import static org.junit.Assert.assertFalse;
26 import static org.junit.Assert.assertTrue;
27
28 import org.junit.Test;
29 import org.onap.policy.common.parameters.GroupValidationResult;
30
31 /**
32  * Class to perform unit test of XacmlPdpParameterGroup.
33  *
34  */
35 public class TestXacmlPdpParameterGroup {
36     CommonTestData commonTestData = new CommonTestData();
37
38     @Test
39     public void testXacmlPdpParameterGroup() {
40         final RestServerParameters restServerParameters = commonTestData.getRestServerParameters(false);
41         final XacmlPdpParameterGroup pdpxParameters =
42                 new XacmlPdpParameterGroup(CommonTestData.PDPX_GROUP_NAME, restServerParameters);
43         final GroupValidationResult validationResult = pdpxParameters.validate();
44         assertTrue(validationResult.isValid());
45         assertEquals(restServerParameters.getHost(), pdpxParameters.getRestServerParameters().getHost());
46         assertEquals(restServerParameters.getPort(), pdpxParameters.getRestServerParameters().getPort());
47         assertEquals(restServerParameters.getUserName(), pdpxParameters.getRestServerParameters().getUserName());
48         assertEquals(restServerParameters.getPassword(), pdpxParameters.getRestServerParameters().getPassword());
49         assertEquals(CommonTestData.PDPX_GROUP_NAME, pdpxParameters.getName());
50     }
51
52     @Test
53     public void testXacmlPdpParameterGroup_NullName() {
54         final RestServerParameters restServerParameters = commonTestData.getRestServerParameters(false);
55         final XacmlPdpParameterGroup pdpxParameters = new XacmlPdpParameterGroup(null, restServerParameters);
56         final GroupValidationResult validationResult = pdpxParameters.validate();
57         assertFalse(validationResult.isValid());
58         assertEquals(null, pdpxParameters.getName());
59         assertTrue(validationResult.getResult().contains(
60                 "field \"name\" type \"java.lang.String\" value \"null\" INVALID, " + "must be a non-blank string"));
61     }
62
63     @Test
64     public void testXacmlPdpParameterGroup_EmptyName() {
65         final RestServerParameters restServerParameters = commonTestData.getRestServerParameters(false);
66
67         final XacmlPdpParameterGroup pdpxParameters = new XacmlPdpParameterGroup("", restServerParameters);
68         final GroupValidationResult validationResult = pdpxParameters.validate();
69         assertFalse(validationResult.isValid());
70         assertEquals("", pdpxParameters.getName());
71         assertTrue(validationResult.getResult().contains(
72                 "field \"name\" type \"java.lang.String\" value \"\" INVALID, " + "must be a non-blank string"));
73     }
74
75     @Test
76     public void testXacmlPdpParameterGroup_EmptyRestServerParameters() {
77         final RestServerParameters restServerParameters = commonTestData.getRestServerParameters(true);
78
79         final XacmlPdpParameterGroup pdpxParameters =
80                 new XacmlPdpParameterGroup(CommonTestData.PDPX_GROUP_NAME, restServerParameters);
81         final GroupValidationResult validationResult = pdpxParameters.validate();
82         assertFalse(validationResult.isValid());
83         assertTrue(validationResult.getResult()
84                 .contains("\"org.onap.policy.pdpx.main.parameters.RestServerParameters\" INVALID, "
85                         + "parameter group has status INVALID"));
86     }
87 }