2  * ============LICENSE_START=======================================================
 
   3  *  Copyright (C) 2018 Ericsson. 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
 
   9  *      http://www.apache.org/licenses/LICENSE-2.0
 
  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.
 
  17  * SPDX-License-Identifier: Apache-2.0
 
  18  * ============LICENSE_END=========================================================
 
  21 package org.onap.policy.distribution.forwarding.xacml.pdp.engine;
 
  23 import static org.junit.Assert.assertEquals;
 
  24 import static org.junit.Assert.assertFalse;
 
  25 import static org.junit.Assert.assertTrue;
 
  27 import org.junit.Test;
 
  28 import org.onap.policy.common.parameters.ValidationStatus;
 
  29 import org.onap.policy.distribution.forwarding.xacml.pdp.XacmlPdpPolicyForwarderParameterGroup;
 
  30 import org.onap.policy.distribution.forwarding.xacml.pdp.XacmlPdpPolicyForwarderParameterGroup.XacmlPdpPolicyForwarderParameterGroupBuilder;
 
  32 public class XacmlPdpPolicyForwarderParameterGroupTest {
 
  35     public void testBuilderAndGetters() {
 
  36         XacmlPdpPolicyForwarderParameterGroupBuilder builder =
 
  37                 new XacmlPdpPolicyForwarderParameterGroupBuilder();
 
  38         XacmlPdpPolicyForwarderParameterGroup configurationParameters =
 
  39                 builder.setUseHttps(true).setHostname("10.10.10.10").setPort(1234).setUserName("myUser")
 
  40                         .setPassword("myPassword").setClientAuth("myClientAuth").setIsManaged(false).build();
 
  42         assertTrue(configurationParameters.isUseHttps());
 
  43         assertEquals("10.10.10.10", configurationParameters.getHostname());
 
  44         assertEquals(1234, configurationParameters.getPort());
 
  45         assertEquals("myUser", configurationParameters.getUserName());
 
  46         assertEquals("myPassword", configurationParameters.getPassword());
 
  47         assertEquals("myClientAuth", configurationParameters.getClientAuth());
 
  48         assertFalse(configurationParameters.isManaged());
 
  52     public void testInvalidHostName() {
 
  53         XacmlPdpPolicyForwarderParameterGroupBuilder builder =
 
  54                 new XacmlPdpPolicyForwarderParameterGroupBuilder();
 
  55         XacmlPdpPolicyForwarderParameterGroup configurationParameters = builder.setUseHttps(true).setHostname("")
 
  56                 .setPort(1234).setUserName("myUser").setPassword("myPassword").setIsManaged(false).build();
 
  57         configurationParameters.setName("myConfiguration");
 
  59         assertEquals(ValidationStatus.INVALID, configurationParameters.validate().getStatus());
 
  63     public void testInvalidPort() {
 
  64         XacmlPdpPolicyForwarderParameterGroupBuilder builder =
 
  65                 new XacmlPdpPolicyForwarderParameterGroupBuilder();
 
  66         XacmlPdpPolicyForwarderParameterGroup configurationParameters =
 
  67                 builder.setUseHttps(true).setHostname("10.10.10.10").setPort(-1234).setUserName("myUser")
 
  68                         .setPassword("myPassword").setIsManaged(false).build();
 
  69         configurationParameters.setName("myConfiguration");
 
  71         assertEquals(ValidationStatus.INVALID, configurationParameters.validate().getStatus());
 
  75     public void testInvalidUserName() {
 
  76         XacmlPdpPolicyForwarderParameterGroupBuilder builder =
 
  77                 new XacmlPdpPolicyForwarderParameterGroupBuilder();
 
  78         XacmlPdpPolicyForwarderParameterGroup configurationParameters =
 
  79                 builder.setUseHttps(true).setHostname("10.10.10.10").setPort(1234).setUserName("")
 
  80                         .setPassword("myPassword").setIsManaged(false).build();
 
  81         configurationParameters.setName("myConfiguration");
 
  83         assertEquals(ValidationStatus.INVALID, configurationParameters.validate().getStatus());
 
  87     public void testInvalidPassword() {
 
  88         XacmlPdpPolicyForwarderParameterGroupBuilder builder =
 
  89                 new XacmlPdpPolicyForwarderParameterGroupBuilder();
 
  90         XacmlPdpPolicyForwarderParameterGroup configurationParameters =
 
  91                 builder.setUseHttps(true).setHostname("10.10.10.10").setPort(1234).setUserName("myUser").setPassword("")
 
  92                         .setIsManaged(false).build();
 
  93         configurationParameters.setName("myConfiguration");
 
  95         assertEquals(ValidationStatus.INVALID, configurationParameters.validate().getStatus());