[Policy-17] Removed the sql scripts from sdk app
[policy/engine.git] / POLICY-SDK-APP / src / test / java / org / openecomp / policy / admin / PolicyManagerServletTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ECOMP Policy Engine
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
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
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=========================================================
19  */
20 package org.openecomp.policy.admin;
21
22 import java.io.BufferedReader;
23 import java.io.StringReader;
24 import java.util.ArrayList;
25 import java.util.List;
26
27 import javax.servlet.http.HttpServletRequest;
28 import javax.servlet.http.HttpServletResponse;
29
30 import org.apache.commons.io.IOUtils;
31 import org.junit.Before;
32 import org.junit.Test;
33 import org.mockito.Mockito;
34 import org.openecomp.policy.common.logging.flexlogger.FlexLogger;
35 import org.openecomp.policy.common.logging.flexlogger.Logger;
36 import org.openecomp.policy.controller.PolicyController;
37 import org.openecomp.policy.model.Roles;
38 import org.openecomp.policy.rest.jpa.PolicyEditorScopes;
39 import org.openecomp.policy.rest.jpa.PolicyEntity;
40 import org.openecomp.policy.rest.jpa.PolicyVersion;
41 import org.openecomp.policy.rest.jpa.UserInfo;
42
43 public class PolicyManagerServletTest extends Mockito{
44         
45         private static Logger logger = FlexLogger.getLogger(PolicyManagerServletTest.class);
46
47         private static List<Object> rolesdata;
48         private static List<Object> policyData;
49         private static List<Object> policyEditorScopes;
50         private static List<Object> policyVersion;
51         
52         @Before
53         public void setUp() throws Exception{
54                 logger.info("setUp: Entering");
55                 UserInfo userinfo = new UserInfo();
56                 userinfo.setUserLoginId("Test");
57                 userinfo.setUserName("Test");
58                 //Roles Data
59         rolesdata = new ArrayList<>();
60         Roles roles = new Roles();
61         roles.setLoginId("Test");
62         roles.setRole("super-admin");
63         Roles roles1 = new Roles();
64         roles1.setLoginId("Test");
65         roles1.setRole("admin");
66         roles1.setScope("['com','Test']");
67         rolesdata.add(roles);
68         rolesdata.add(roles1);
69         
70         //PolicyEntity Data
71         policyData = new ArrayList<>();
72         String policyContent = "";
73         try {
74                         ClassLoader classLoader = getClass().getClassLoader();
75                         policyContent = IOUtils.toString(classLoader.getResourceAsStream("Config_SampleTest1206.1.xml"));
76                 } catch (Exception e1) {
77                         logger.error("Exception Occured"+e1);
78                 }
79         PolicyEntity entity = new PolicyEntity();
80         entity.setPolicyName("Config_SampleTest.1.xml");
81         entity.setPolicyData(policyContent);
82         entity.setScope("com");
83         policyData.add(entity);
84         
85         //PolicyEditorScopes data
86         policyEditorScopes = new ArrayList<>();
87         PolicyEditorScopes scopes = new PolicyEditorScopes();
88         scopes.setScopeName("com");
89         scopes.setUserCreatedBy(userinfo);
90         scopes.setUserModifiedBy(userinfo);
91         PolicyEditorScopes scopes1 = new PolicyEditorScopes();
92         scopes1.setScopeName("com\\Test");
93         scopes1.setUserCreatedBy(userinfo);
94         scopes1.setUserModifiedBy(userinfo);
95         policyEditorScopes.add(scopes);
96         policyEditorScopes.add(scopes1);
97         
98         //PolicyVersion data
99         policyVersion = new ArrayList<>();
100         PolicyVersion policy = new PolicyVersion();
101         policy.setPolicyName("com\\Config_SampleTest1206");
102         policy.setActiveVersion(1);
103         policy.setHigherVersion(1);
104         policy.setCreatedBy("Test");
105         policy.setModifiedBy("Test");
106         policyVersion.add(policy);
107         }
108         
109         @Test
110         public void testDescribePolicy(){
111                 PolicyManagerServlet servlet = new PolicyManagerServlet();
112                 HttpServletRequest request = mock(HttpServletRequest.class);       
113         HttpServletResponse response = mock(HttpServletResponse.class);  
114         PolicyController controller = mock(PolicyController.class);
115         
116         BufferedReader reader = new BufferedReader(new StringReader("{params: { mode: 'DESCRIBEPOLICYFILE', path: 'com.Config_SampleTest1206.1.xml'}}"));
117         try {
118                         when(request.getReader()).thenReturn(reader);
119                         when(controller.getDataByQuery("FROM PolicyEntity where policyName = 'Config_SampleTest1206.1.xml' and scope ='com'")).thenReturn(policyData);
120                         servlet.setPolicyController(controller);
121                         servlet.doPost(request, response);
122                 } catch (Exception e1) {
123                         logger.error("Exception Occured"+e1);
124                 }
125         }
126         
127         
128         @Test
129         public void testPolicyScopeList(){
130                 PolicyManagerServlet servlet = new PolicyManagerServlet();
131                 HttpServletRequest request = mock(HttpServletRequest.class);       
132         HttpServletResponse response = mock(HttpServletResponse.class); 
133         PolicyController controller = mock(PolicyController.class);
134         List<String> list = new ArrayList<>();
135         list.add("{params: { mode: 'LIST', path: '/', onlyFolders: false}}");
136         list.add("{params: { mode: 'LIST', path: '/com', onlyFolders: false}}");
137         for(int i =0; i < list.size(); i++){
138                 BufferedReader reader = new BufferedReader(new StringReader(list.get(i)));
139             try {
140                         when(request.getReader()).thenReturn(reader);
141                         when(controller.getRoles("Test")).thenReturn(rolesdata);
142                         when(controller.getDataByQuery("from PolicyEditorScopes")).thenReturn(policyEditorScopes);
143                         when(controller.getDataByQuery("from PolicyEditorScopes where SCOPENAME like 'com%'")).thenReturn(policyEditorScopes);
144                         when(controller.getDataByQuery("from PolicyVersion where POLICY_NAME like 'com%'")).thenReturn(policyVersion);
145                         servlet.setPolicyController(controller);
146                         servlet.setTestUserId("Test");
147                         servlet.doPost(request, response);
148                 } catch (Exception e1) {
149                         logger.error("Exception Occured"+e1);
150                 }
151         }
152         }
153         
154
155 }