2 * ============LICENSE_START=======================================================
3 * Copyright (C) 2019 Nordix Foundation.
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.apex.starter.parameters;
23 import static org.junit.Assert.assertEquals;
24 import static org.junit.Assert.assertFalse;
25 import static org.junit.Assert.assertTrue;
29 import org.junit.Test;
30 import org.onap.policy.common.parameters.GroupValidationResult;
33 * Class to perform unit test of {@link ApexStarterParameterGroup}.
35 * @author Ajith Sreekumar (ajith.sreekumar@est.tech)
37 public class TestApexStarterParameterGroup {
38 CommonTestData commonTestData = new CommonTestData();
41 public void testApexStarterParameterGroup_Named() {
42 final ApexStarterParameterGroup apexStarterParameters = new ApexStarterParameterGroup("my-name");
43 assertEquals("my-name", apexStarterParameters.getName());
47 public void testApexStarterParameterGroup() {
48 final ApexStarterParameterGroup apexStarterParameters = commonTestData.toObject(
49 commonTestData.getApexStarterParameterGroupMap(CommonTestData.APEX_STARTER_GROUP_NAME),
50 ApexStarterParameterGroup.class);
51 final PdpStatusParameters pdpStatusParameters = apexStarterParameters.getPdpStatusParameters();
52 final GroupValidationResult validationResult = apexStarterParameters.validate();
53 assertTrue(validationResult.isValid());
54 assertEquals(CommonTestData.APEX_STARTER_GROUP_NAME, apexStarterParameters.getName());
55 assertEquals(CommonTestData.TIME_INTERVAL, pdpStatusParameters.getTimeIntervalMs());
56 assertEquals(CommonTestData.PDP_TYPE, pdpStatusParameters.getPdpType());
57 assertEquals(CommonTestData.DESCRIPTION, pdpStatusParameters.getDescription());
58 assertEquals(CommonTestData.SUPPORTED_POLICY_TYPES, pdpStatusParameters.getSupportedPolicyTypes());
62 public void testApexStarterParameterGroup_NullName() {
63 final ApexStarterParameterGroup apexStarterParameters = commonTestData
64 .toObject(commonTestData.getApexStarterParameterGroupMap(null), ApexStarterParameterGroup.class);
65 final GroupValidationResult validationResult = apexStarterParameters.validate();
66 assertFalse(validationResult.isValid());
67 assertEquals(null, apexStarterParameters.getName());
68 assertTrue(validationResult.getResult().contains("is null"));
72 public void testApexStarterParameterGroup_EmptyName() {
73 final ApexStarterParameterGroup apexStarterParameters = commonTestData
74 .toObject(commonTestData.getApexStarterParameterGroupMap(""), ApexStarterParameterGroup.class);
75 final GroupValidationResult validationResult = apexStarterParameters.validate();
76 assertFalse(validationResult.isValid());
77 assertEquals("", apexStarterParameters.getName());
78 assertTrue(validationResult.getResult().contains(
79 "field \"name\" type \"java.lang.String\" value \"\" INVALID, " + "must be a non-blank string"));
83 public void testApexStarterParameterGroup_SetName() {
84 final ApexStarterParameterGroup apexStarterParameters = commonTestData.toObject(
85 commonTestData.getApexStarterParameterGroupMap(CommonTestData.APEX_STARTER_GROUP_NAME),
86 ApexStarterParameterGroup.class);
87 apexStarterParameters.setName("ApexStarterNewGroup");
88 final GroupValidationResult validationResult = apexStarterParameters.validate();
89 assertTrue(validationResult.isValid());
90 assertEquals("ApexStarterNewGroup", apexStarterParameters.getName());
94 public void testApexStarterParameterGroup_EmptyPdpStatusParameters() {
95 final Map<String, Object> map =
96 commonTestData.getApexStarterParameterGroupMap(CommonTestData.APEX_STARTER_GROUP_NAME);
97 map.put("pdpStatusParameters", commonTestData.getPdpStatusParametersMap(true));
98 final ApexStarterParameterGroup apexStarterParameters =
99 commonTestData.toObject(map, ApexStarterParameterGroup.class);
100 final GroupValidationResult validationResult = apexStarterParameters.validate();
101 assertFalse(validationResult.isValid());
102 assertTrue(validationResult.getResult()
103 .contains("\"org.onap.policy.apex.starter.parameters.ApexStarterParameterGroup\" INVALID, "
104 + "parameter group has status INVALID"));