2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.openecomp.policy.test;
23 import static org.junit.Assert.assertEquals;
24 import static org.junit.Assert.assertNotNull;
25 import static org.junit.Assert.assertNull;
26 import static org.junit.Assert.fail;
28 import java.util.Collection;
29 import java.util.HashMap;
32 import org.apache.commons.logging.Log;
33 import org.apache.commons.logging.LogFactory;
34 import org.junit.Before;
35 import org.junit.Test;
36 import org.openecomp.policy.api.PolicyConfig;
37 import org.openecomp.policy.api.PolicyConfigException;
38 import org.openecomp.policy.api.PolicyConfigStatus;
39 import org.openecomp.policy.api.PolicyEngine;
40 import org.openecomp.policy.api.PolicyEngineException;
41 import org.openecomp.policy.api.PolicyType;
43 import org.openecomp.policy.common.logging.flexlogger.*;
45 public class GetConfigStringStringMapTest {
47 private PolicyEngine policyEngine = null;
48 private String eCOMPComponentName = null;
49 private String configName = null;
50 private Map<String,String> configAttributes = new HashMap<String,String>();
51 private Collection<PolicyConfig> policyConfig = null;
52 private static final Logger logger = FlexLogger.getLogger(GetConfigStringStringMapTest.class);
56 policyEngine = new PolicyEngine("Test/config_pass.properties");
57 } catch (PolicyEngineException e) {
58 logger.error(e.getMessage());
59 fail("PolicyEngine Instantiation Error" + e);
61 logger.info("Loaded.. PolicyEngine");
65 public void testGetConfigStringStringMapFail() {
66 eCOMPComponentName = null;
68 configAttributes = null;
70 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
71 } catch (PolicyConfigException e) {
72 logger.warn(e.getMessage());
74 assertNull(policyConfig);
78 public void testGetConfigStringStringMapFail1() {
79 eCOMPComponentName = null;
80 configName = "testFail";
81 configAttributes.put("TestValue", "Fail");
83 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
84 } catch (PolicyConfigException e) {
85 logger.warn(e.getMessage());
87 assertNull(policyConfig);
91 public void testGetConfigStringStringMapFail2() {
92 eCOMPComponentName = "TestFail";
94 configAttributes.put("TestValue", "Fail");
96 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
97 } catch (PolicyConfigException e) {
98 logger.warn(e.getMessage());
100 assertNull(policyConfig);
104 public void testGetConfigStringStringMapFail3() {
105 eCOMPComponentName = "TestFail";
106 configName = "configFail";
107 configAttributes= null;
109 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
110 } catch (PolicyConfigException e) {
111 logger.warn(e.getMessage());
113 assertNull(policyConfig);
117 public void testGetConfigStringStringMapfail4() {
118 eCOMPComponentName = "TestFail";
119 configName = "configFail";
120 configAttributes.put("", "");
122 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
123 } catch (PolicyConfigException e) {
124 logger.warn(e.getMessage());
126 assertNull(policyConfig);
130 public void testGetConfigStringStringMapNotValid() {
131 eCOMPComponentName = "TestFail";
132 configName = "configFail";
133 configAttributes.put("Action:com.test.fail", "Value");
135 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
136 } catch (PolicyConfigException e) {
137 logger.warn(e.getMessage());
139 for(PolicyConfig policyConfig : this.policyConfig){
140 logger.info(policyConfig.getPolicyConfigMessage() + " , " +policyConfig.getPolicyConfigStatus());
141 assertNotNull(policyConfig);
142 assertEquals(PolicyConfigStatus.CONFIG_NOT_FOUND,policyConfig.getPolicyConfigStatus());
143 assertNotNull(policyConfig.getPolicyConfigMessage());
144 assertNull(policyConfig.getType());
145 assertNull(policyConfig.toJSON());
146 assertNull(policyConfig.toProperties());
147 assertNull(policyConfig.toXML());
148 assertNull(policyConfig.toOther());
153 public void testGetConfigStringStringMapValidJSON() {
154 eCOMPComponentName = "JSON";
155 configName = "JSONconfig";
156 configAttributes.put("Resource.com:test:resource:json", "Test");
157 configAttributes.put("Action.com:test:action:json", "TestJSON");
158 configAttributes.put("Subject.com:test:subject:json", "TestSubject");
160 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
161 } catch (PolicyConfigException e) {
162 logger.warn(e.getMessage());
164 for(PolicyConfig policyConfig : this.policyConfig){
165 logger.info(policyConfig.getPolicyConfigMessage() + " , " +policyConfig.getPolicyConfigStatus());
166 assertNotNull(policyConfig);
167 assertEquals(PolicyConfigStatus.CONFIG_RETRIEVED,policyConfig.getPolicyConfigStatus());
168 assertNotNull(policyConfig.getPolicyConfigMessage());
169 assertEquals(PolicyType.JSON,policyConfig.getType());
170 assertNotNull(policyConfig.toJSON());
171 assertNull(policyConfig.toProperties());
172 assertNull(policyConfig.toXML());
173 assertNull(policyConfig.toOther());
178 public void testGetConfigStringStringMapValidXML() {
179 eCOMPComponentName = "XML";
180 configName = "XMLconfig";
181 configAttributes.put("Resource.com:test:resource:json", "Test");
182 configAttributes.put("Action.com:test:action:json", "TestJSON");
183 configAttributes.put("Subject.com:test:subject:json", "TestSubject");
185 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
186 } catch (PolicyConfigException e) {
187 logger.warn(e.getMessage());
189 for(PolicyConfig policyConfig : this.policyConfig){
190 logger.info(policyConfig.getPolicyConfigMessage() + " , " +policyConfig.getPolicyConfigStatus());
191 assertNotNull(policyConfig);
192 assertEquals(PolicyConfigStatus.CONFIG_RETRIEVED,policyConfig.getPolicyConfigStatus());
193 assertNotNull(policyConfig.getPolicyConfigMessage());
194 assertEquals(PolicyType.XML,policyConfig.getType());
195 assertNull(policyConfig.toJSON());
196 assertNull(policyConfig.toProperties());
197 assertNotNull(policyConfig.toXML());
198 assertNull(policyConfig.toOther());
203 public void testGetConfigStringStringMapValidProperties() {
204 eCOMPComponentName = "Properties";
205 configName = "PropConfig" ;
206 configAttributes.put("Resource.com:test:resource:json", "Test");
207 configAttributes.put("Action.com:test:action:json", "TestJSON");
208 configAttributes.put("Subject.com:test:subject:json", "TestSubject");
210 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
211 } catch (PolicyConfigException e) {
212 logger.warn(e.getMessage());
214 for(PolicyConfig policyConfig : this.policyConfig){
215 logger.info(policyConfig.getPolicyConfigMessage() + " , " +policyConfig.getPolicyConfigStatus());
216 assertNotNull(policyConfig);
217 assertEquals(PolicyConfigStatus.CONFIG_RETRIEVED,policyConfig.getPolicyConfigStatus());
218 assertNotNull(policyConfig.getPolicyConfigMessage());
219 assertEquals(PolicyType.PROPERTIES,policyConfig.getType());
220 assertNull(policyConfig.toJSON());
221 assertNotNull(policyConfig.toProperties());
222 assertNull(policyConfig.toXML());
223 assertNull(policyConfig.toOther());
228 public void testGetConfigStringStringMapValidOther() {
229 eCOMPComponentName = "Other";
230 configName = "OtherConfig" ;
231 configAttributes.put("Resource.com:test:resource:json", "Test");
232 configAttributes.put("Action.com:test:action:json", "TestJSON");
233 configAttributes.put("Subject.com:test:subject:json", "TestSubject");
235 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
236 } catch (PolicyConfigException e) {
237 logger.warn(e.getMessage());
239 for(PolicyConfig policyConfig : this.policyConfig){
240 logger.info(policyConfig.getPolicyConfigMessage() + " , " +policyConfig.getPolicyConfigStatus());
241 assertNotNull(policyConfig);
242 assertEquals(PolicyConfigStatus.CONFIG_RETRIEVED,policyConfig.getPolicyConfigStatus());
243 assertNotNull(policyConfig.getPolicyConfigMessage());
244 assertEquals(PolicyType.OTHER,policyConfig.getType());
245 assertNull(policyConfig.toJSON());
246 assertNull(policyConfig.toProperties());
247 assertNull(policyConfig.toXML());
248 assertNotNull(policyConfig.toOther());