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.junit.Before;
33 import org.junit.Test;
34 import org.openecomp.policy.api.PolicyConfig;
35 import org.openecomp.policy.api.PolicyConfigException;
36 import org.openecomp.policy.api.PolicyConfigStatus;
37 import org.openecomp.policy.api.PolicyEngine;
38 import org.openecomp.policy.api.PolicyEngineException;
39 import org.openecomp.policy.api.PolicyType;
40 import org.openecomp.policy.common.logging.flexlogger.FlexLogger;
41 import org.openecomp.policy.common.logging.flexlogger.Logger;
43 public class GetConfigStringStringMapTest {
45 private PolicyEngine policyEngine = null;
46 private String eCOMPComponentName = null;
47 private String configName = null;
48 private Map<String,String> configAttributes = new HashMap<String,String>();
49 private Collection<PolicyConfig> policyConfig = null;
50 private static final Logger logger = FlexLogger.getLogger(GetConfigStringStringMapTest.class);
54 policyEngine = new PolicyEngine("Test/config_pass.properties");
55 } catch (PolicyEngineException e) {
56 logger.error(e.getMessage());
57 fail("PolicyEngine Instantiation Error" + e);
59 logger.info("Loaded.. PolicyEngine");
62 @SuppressWarnings("deprecation")
64 public void testGetConfigStringStringMapFail() {
65 eCOMPComponentName = null;
67 configAttributes = null;
69 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
70 } catch (PolicyConfigException e) {
71 logger.warn(e.getMessage());
73 assertNull(policyConfig);
76 @SuppressWarnings("deprecation")
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);
90 @SuppressWarnings("deprecation")
92 public void testGetConfigStringStringMapFail2() {
93 eCOMPComponentName = "TestFail";
95 configAttributes.put("TestValue", "Fail");
97 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
98 } catch (PolicyConfigException e) {
99 logger.warn(e.getMessage());
101 assertNull(policyConfig);
104 @SuppressWarnings("deprecation")
106 public void testGetConfigStringStringMapFail3() {
107 eCOMPComponentName = "TestFail";
108 configName = "configFail";
109 configAttributes= null;
111 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
112 } catch (PolicyConfigException e) {
113 logger.warn(e.getMessage());
115 assertNull(policyConfig);
118 @SuppressWarnings("deprecation")
120 public void testGetConfigStringStringMapfail4() {
121 eCOMPComponentName = "TestFail";
122 configName = "configFail";
123 configAttributes.put("", "");
125 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
126 } catch (PolicyConfigException e) {
127 logger.warn(e.getMessage());
129 assertNull(policyConfig);
133 @SuppressWarnings("deprecation")
134 public void testGetConfigStringStringMapNotValid() {
135 eCOMPComponentName = "TestFail";
136 configName = "configFail";
137 configAttributes.put("Action:com.test.fail", "Value");
139 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
140 } catch (PolicyConfigException e) {
141 logger.warn(e.getMessage());
143 for(PolicyConfig policyConfig : this.policyConfig){
144 logger.info(policyConfig.getPolicyConfigMessage() + " , " +policyConfig.getPolicyConfigStatus());
145 assertNotNull(policyConfig);
146 assertEquals(PolicyConfigStatus.CONFIG_NOT_FOUND,policyConfig.getPolicyConfigStatus());
147 assertNotNull(policyConfig.getPolicyConfigMessage());
148 assertNull(policyConfig.getType());
149 assertNull(policyConfig.toJSON());
150 assertNull(policyConfig.toProperties());
151 assertNull(policyConfig.toXML());
152 assertNull(policyConfig.toOther());
157 @SuppressWarnings("deprecation")
158 public void testGetConfigStringStringMapValidJSON() {
159 eCOMPComponentName = "JSON";
160 configName = "JSONconfig";
161 configAttributes.put("Resource.com:test:resource:json", "Test");
162 configAttributes.put("Action.com:test:action:json", "TestJSON");
163 configAttributes.put("Subject.com:test:subject:json", "TestSubject");
165 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
166 } catch (PolicyConfigException e) {
167 logger.warn(e.getMessage());
169 for(PolicyConfig policyConfig : this.policyConfig){
170 logger.info(policyConfig.getPolicyConfigMessage() + " , " +policyConfig.getPolicyConfigStatus());
171 assertNotNull(policyConfig);
172 assertEquals(PolicyConfigStatus.CONFIG_RETRIEVED,policyConfig.getPolicyConfigStatus());
173 assertNotNull(policyConfig.getPolicyConfigMessage());
174 assertEquals(PolicyType.JSON,policyConfig.getType());
175 assertNotNull(policyConfig.toJSON());
176 assertNull(policyConfig.toProperties());
177 assertNull(policyConfig.toXML());
178 assertNull(policyConfig.toOther());
183 @SuppressWarnings("deprecation")
184 public void testGetConfigStringStringMapValidXML() {
185 eCOMPComponentName = "XML";
186 configName = "XMLconfig";
187 configAttributes.put("Resource.com:test:resource:json", "Test");
188 configAttributes.put("Action.com:test:action:json", "TestJSON");
189 configAttributes.put("Subject.com:test:subject:json", "TestSubject");
191 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
192 } catch (PolicyConfigException e) {
193 logger.warn(e.getMessage());
195 for(PolicyConfig policyConfig : this.policyConfig){
196 logger.info(policyConfig.getPolicyConfigMessage() + " , " +policyConfig.getPolicyConfigStatus());
197 assertNotNull(policyConfig);
198 assertEquals(PolicyConfigStatus.CONFIG_RETRIEVED,policyConfig.getPolicyConfigStatus());
199 assertNotNull(policyConfig.getPolicyConfigMessage());
200 assertEquals(PolicyType.XML,policyConfig.getType());
201 assertNull(policyConfig.toJSON());
202 assertNull(policyConfig.toProperties());
203 assertNotNull(policyConfig.toXML());
204 assertNull(policyConfig.toOther());
209 @SuppressWarnings("deprecation")
210 public void testGetConfigStringStringMapValidProperties() {
211 eCOMPComponentName = "Properties";
212 configName = "PropConfig" ;
213 configAttributes.put("Resource.com:test:resource:json", "Test");
214 configAttributes.put("Action.com:test:action:json", "TestJSON");
215 configAttributes.put("Subject.com:test:subject:json", "TestSubject");
217 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
218 } catch (PolicyConfigException e) {
219 logger.warn(e.getMessage());
221 for(PolicyConfig policyConfig : this.policyConfig){
222 logger.info(policyConfig.getPolicyConfigMessage() + " , " +policyConfig.getPolicyConfigStatus());
223 assertNotNull(policyConfig);
224 assertEquals(PolicyConfigStatus.CONFIG_RETRIEVED,policyConfig.getPolicyConfigStatus());
225 assertNotNull(policyConfig.getPolicyConfigMessage());
226 assertEquals(PolicyType.PROPERTIES,policyConfig.getType());
227 assertNull(policyConfig.toJSON());
228 assertNotNull(policyConfig.toProperties());
229 assertNull(policyConfig.toXML());
230 assertNull(policyConfig.toOther());
235 @SuppressWarnings("deprecation")
236 public void testGetConfigStringStringMapValidOther() {
237 eCOMPComponentName = "Other";
238 configName = "OtherConfig" ;
239 configAttributes.put("Resource.com:test:resource:json", "Test");
240 configAttributes.put("Action.com:test:action:json", "TestJSON");
241 configAttributes.put("Subject.com:test:subject:json", "TestSubject");
243 policyConfig = policyEngine.getConfig(eCOMPComponentName, configName, configAttributes);
244 } catch (PolicyConfigException e) {
245 logger.warn(e.getMessage());
247 for(PolicyConfig policyConfig : this.policyConfig){
248 logger.info(policyConfig.getPolicyConfigMessage() + " , " +policyConfig.getPolicyConfigStatus());
249 assertNotNull(policyConfig);
250 assertEquals(PolicyConfigStatus.CONFIG_RETRIEVED,policyConfig.getPolicyConfigStatus());
251 assertNotNull(policyConfig.getPolicyConfigMessage());
252 assertEquals(PolicyType.OTHER,policyConfig.getType());
253 assertNull(policyConfig.toJSON());
254 assertNull(policyConfig.toProperties());
255 assertNull(policyConfig.toXML());
256 assertNotNull(policyConfig.toOther());