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 java.util.HashMap;
25 import java.util.UUID;
27 import junit.framework.TestCase;
29 import org.apache.commons.logging.Log;
30 import org.apache.commons.logging.LogFactory;
31 import org.junit.Test;
32 import org.mockito.Mockito;
33 import org.openecomp.policy.api.AttributeType;
34 import org.openecomp.policy.api.PolicyChangeResponse;
35 import org.openecomp.policy.api.PolicyConfigType;
36 import org.openecomp.policy.api.PolicyEngine;
37 import org.openecomp.policy.api.PolicyEngineException;
38 import org.openecomp.policy.api.PolicyParameters;
39 import org.openecomp.policy.api.PolicyType;
40 import org.openecomp.policy.std.StdPolicyChangeResponse;
42 import org.openecomp.policy.common.logging.flexlogger.*;
45 * The class <code>ConfigBasePolicyTest</code> contains tests for the class
46 * {@link <code>PolicyEngine</code>}
48 * @pattern JUnit Test Case
51 public class ConfigBasePolicyTest extends TestCase {
53 private static final Logger logger = FlexLogger.getLogger(DecisionPolicyApiTest.class);
55 private PolicyEngine policyEngine = null;
56 private PolicyEngine mockPolicyEngine = null;
58 PolicyChangeResponse result = null;
59 StdPolicyChangeResponse response = new StdPolicyChangeResponse();
60 PolicyParameters policyParameters = new PolicyParameters();
63 * Perform pre-test initialization
67 * @see TestCase#setUp()
69 protected void setUp() throws Exception {
71 policyEngine = new PolicyEngine("Test/config_pass.properties");
72 } catch (PolicyEngineException e) {
73 logger.error(e.getMessage());
74 fail("PolicyEngine Instantiation Error" + e);
76 logger.info("Loaded.. PolicyEngine");
78 mockPolicyEngine = Mockito.mock(PolicyEngine.class);
80 policyParameters.setPolicyConfigType(PolicyConfigType.Base); //required
81 policyParameters.setPolicyName("test.junitTest"); //required
82 policyParameters.setEcompName("test");
83 policyParameters.setConfigName("testBase");
84 policyParameters.setConfigBodyType(PolicyType.OTHER);
85 policyParameters.setConfigBody("testing");
86 policyParameters.setPolicyDescription("testing"); //optional
87 //policyParameters.setPolicyScope("test"); //Directory will be created where the Policies are saved... this displays a a subscope on the GUI
89 //Set the Component Attributes... These are Optional
90 Map<String, String> configAttributes = new HashMap<String, String>();
91 configAttributes.put("test", "testing");
93 Map<AttributeType, Map<String,String>> attributes = new HashMap<AttributeType, Map<String,String>>();
94 attributes.put(AttributeType.MATCHING, configAttributes);
95 policyParameters.setAttributes(attributes);
97 policyParameters.setRequestID(UUID.randomUUID());
101 * Perform post-test clean up
105 * @see TestCase#tearDown()
107 protected void tearDown() throws Exception {
109 // Add additional tear down code here
113 * Run the PolicyChangeResponse createPolicy(PolicyParameters) method test
115 public void testCreatePolicy() {
116 response.setResponseMessage("success");
117 PolicyChangeResponse result = null;
120 Mockito.when(mockPolicyEngine.createPolicy(policyParameters)).thenReturn(response);
121 result = mockPolicyEngine.createPolicy(policyParameters);
123 } catch (Exception e) {
124 logger.warn(e.getMessage());
126 assertEquals(result, response);
130 * Run the String createConfigPolicy() method test
133 public void testCreateConfigPolicy() {
134 String response = "success";
135 String result = null;
138 Mockito.when(mockPolicyEngine.createConfigPolicy("testPolicy","test","test","testConfig",null,"OTHER","test","test",null, null, null, null, null)).thenReturn(response);
139 result = mockPolicyEngine.createConfigPolicy("testPolicy","test","test","testConfig",null,"OTHER","test","test",null, null, null, null, null);
141 } catch (Exception e) {
142 logger.warn(e.getMessage());
144 assertEquals(result, response);
148 * Run the PolicyChangeResponse updatePolicy(PolicyParameters) method test
150 public void testUpdatePolicy() {
151 response.setResponseMessage("success");
152 PolicyChangeResponse result = null;
155 Mockito.when(mockPolicyEngine.updatePolicy(policyParameters)).thenReturn(response);
156 result = mockPolicyEngine.updatePolicy(policyParameters);
158 } catch (Exception e) {
159 logger.warn(e.getMessage());
161 assertEquals(result, response);
165 * Run the String updateConfigPolicy() method test
168 public void testUpdateConfigPolicy() {
169 String response = "success";
170 String result = null;
173 Mockito.when(mockPolicyEngine.updateConfigPolicy("testPolicy","test","test","testConfig",null,"OTHER","test","test",null, null, null, null, null)).thenReturn(response);
174 result = mockPolicyEngine.updateConfigPolicy("testPolicy","test","test","testConfig",null,"OTHER","test","test",null, null, null, null, null);
176 } catch (Exception e) {
177 logger.warn(e.getMessage());
179 assertEquals(result, response);
183 public final void testCreatePolicyNullPolicyName() {
184 response.setResponseMessage("PE300 - Data Issue: No Policy Name given.");
185 policyParameters.setPolicyName(null);
187 result = policyEngine.createPolicy(policyParameters);
188 } catch (Exception e){
189 logger.warn(e.getMessage());
191 assertEquals(result.getResponseMessage(), response.getResponseMessage());
195 public final void testCreatePolicyNullPolicyScope() {
196 response.setResponseMessage("PE300 - Data Issue: No Policy Scope given.");
197 policyParameters.setPolicyName("test");
199 result = policyEngine.createPolicy(policyParameters);
200 } catch (Exception e){
201 logger.warn(e.getMessage());
203 assertEquals(result.getResponseMessage(), response.getResponseMessage());
207 public final void testCreatePolicyNullEcompName() {
208 response.setResponseMessage("PE300 - Data Issue: No ECOMP Name given.");
209 policyParameters.setEcompName(null);
211 result = policyEngine.createPolicy(policyParameters);
212 } catch (Exception e){
213 logger.warn(e.getMessage());
215 assertEquals(result.getResponseMessage(), response.getResponseMessage());
219 public final void testCreatePolicyNullPolicyConfigName() {
220 response.setResponseMessage("PE300 - Data Issue: No Config Name given.");
221 policyParameters.setConfigName(null);;
223 result = policyEngine.createPolicy(policyParameters);
224 } catch (Exception e){
225 logger.warn(e.getMessage());
227 assertEquals(result.getResponseMessage(), response.getResponseMessage());
231 public final void testCreatePolicyNullPolicyConfigBodyType() {
232 response.setResponseMessage("PE300 - Data Issue: No Config Body Type given.");
233 policyParameters.setConfigBodyType(null);
235 result = policyEngine.createPolicy(policyParameters);
236 } catch (Exception e){
237 logger.warn(e.getMessage());
239 assertEquals(result.getResponseMessage(), response.getResponseMessage());
243 public final void testCreatePolicyNullPolicyConfigBody() {
244 response.setResponseMessage("PE300 - Data Issue: No Config Body given.");
245 policyParameters.setConfigBody(null);
247 result = policyEngine.createPolicy(policyParameters);
248 } catch (Exception e){
249 logger.warn(e.getMessage());
251 assertEquals(result.getResponseMessage(), response.getResponseMessage());
255 public final void testUpdatePolicyNullPolicyName() {
256 response.setResponseMessage("PE300 - Data Issue: No Policy Name given.");
257 policyParameters.setPolicyName(null);
259 result = policyEngine.updatePolicy(policyParameters);
260 } catch (Exception e){
261 logger.warn(e.getMessage());
263 assertEquals(result.getResponseMessage(), response.getResponseMessage());
267 public final void testUpdatePolicyNullPolicyScope() {
268 response.setResponseMessage("PE300 - Data Issue: No Policy Scope given.");
269 policyParameters.setPolicyName("test");
271 result = policyEngine.updatePolicy(policyParameters);
272 } catch (Exception e){
273 logger.warn(e.getMessage());
275 assertEquals(result.getResponseMessage(), response.getResponseMessage());
279 public final void testUpdatePolicyNullEcompName() {
280 response.setResponseMessage("PE300 - Data Issue: No ECOMP Name given.");
281 policyParameters.setEcompName(null);
283 result = policyEngine.updatePolicy(policyParameters);
284 } catch (Exception e){
285 logger.warn(e.getMessage());
287 assertEquals(result.getResponseMessage(), response.getResponseMessage());
291 public final void testUpdatePolicyNullPolicyConfigName() {
292 response.setResponseMessage("PE300 - Data Issue: No Config Name given.");
293 policyParameters.setConfigName(null);;
295 result = policyEngine.createPolicy(policyParameters);
296 } catch (Exception e){
297 logger.warn(e.getMessage());
299 assertEquals(result.getResponseMessage(), response.getResponseMessage());
303 public final void testUpdatePolicyNullPolicyConfigBodyType() {
304 response.setResponseMessage("PE300 - Data Issue: No Config Body Type given.");
305 policyParameters.setConfigBodyType(null);
307 result = policyEngine.createPolicy(policyParameters);
308 } catch (Exception e){
309 logger.warn(e.getMessage());
311 assertEquals(result.getResponseMessage(), response.getResponseMessage());
315 public final void testUpdatePolicyNullPolicyConfigBody() {
316 response.setResponseMessage("PE300 - Data Issue: No Config Body given.");
317 policyParameters.setConfigBody(null);
319 result = policyEngine.createPolicy(policyParameters);
320 } catch (Exception e){
321 logger.warn(e.getMessage());
323 assertEquals(result.getResponseMessage(), response.getResponseMessage());