40ec34831211e78d72e04945ac504d6a401aa7ff
[policy/engine.git] / ONAP-PAP-REST / src / test / java / org / onap / policy / pap / xacml / rest / controller / PolicyScopeDictionaryControllerTest.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * ONAP-PAP-REST
4  * ================================================================================
5  * Copyright (C) 2018 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.onap.policy.pap.xacml.rest.controller;
21
22 import static org.junit.Assert.assertTrue;
23 import static org.junit.Assert.fail;
24 import static org.mockito.Mockito.doNothing;
25 import static org.mockito.Mockito.mock;
26 import static org.mockito.Mockito.when;
27
28 import java.io.BufferedReader;
29 import java.io.StringReader;
30 import java.util.ArrayList;
31 import java.util.List;
32
33 import javax.servlet.http.HttpServletRequest;
34
35 import org.junit.Before;
36 import org.junit.Test;
37 import org.mockito.Mockito;
38 import org.onap.policy.common.logging.flexlogger.FlexLogger;
39 import org.onap.policy.common.logging.flexlogger.Logger;
40 import org.onap.policy.pap.xacml.rest.util.DictionaryUtils;
41 import org.onap.policy.rest.dao.CommonClassDao;
42 import org.onap.policy.rest.jpa.GroupPolicyScopeList;
43 import org.onap.policy.rest.jpa.PolicyScopeClosedLoop;
44 import org.onap.policy.rest.jpa.PolicyScopeResource;
45 import org.onap.policy.rest.jpa.PolicyScopeService;
46 import org.onap.policy.rest.jpa.PolicyScopeType;
47 import org.onap.policy.rest.jpa.UserInfo;
48 import org.springframework.mock.web.MockHttpServletResponse;
49
50 public class PolicyScopeDictionaryControllerTest {
51         private static Logger logger = FlexLogger.getLogger(PolicyScopeDictionaryControllerTest.class);
52         private static CommonClassDao commonClassDao;
53         private String jsonString = null;
54         private HttpServletRequest request = null;
55         private PolicyScopeDictionaryController controller = null;
56         private MockHttpServletResponse response = null;
57         private UserInfo userInfo;
58         private List<String>  data;
59
60         @Before
61         public void setUp() throws Exception {
62                 logger.info("setUp: Entering");
63                 commonClassDao = Mockito.mock(CommonClassDao.class);
64                 
65                 data = new ArrayList<>();
66                 data.add("Test");
67                 
68                 userInfo = new UserInfo();
69                 userInfo.setUserLoginId("Test");
70                 userInfo.setUserName("Test");
71         
72                 doNothing().when(commonClassDao).delete(new GroupPolicyScopeList());
73                 doNothing().when(commonClassDao).save(new GroupPolicyScopeList());
74                 
75                 controller = new PolicyScopeDictionaryController();
76                 controller.setCommonClassDao(commonClassDao);
77                 
78                 request = Mockito.mock(HttpServletRequest.class);
79                 response =  new MockHttpServletResponse();  
80                 new DictionaryUtils(commonClassDao);
81         DictionaryUtils.setDictionaryUtils(new DictionaryUtils());
82         mock(DictionaryUtils.class);
83                 logger.info("setUp: exit");
84         }
85         
86         @Test
87         public void testGetGroupPolicyScopeEntityDataByName(){
88                 when(commonClassDao.getDataByColumn(GroupPolicyScopeList.class, "name")).thenReturn(data);
89                 controller.getGroupPolicyScopeEntityDataByName(response);
90                 try {
91                         assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("groupPolicyScopeListDatas"));
92                 } catch (Exception e) {
93                         fail();
94                         logger.error(e.getMessage(),e);
95                 }
96         }
97         
98         @Test
99         public void testGetGroupPolicyScopeEntityData(){
100                 when(commonClassDao.getData(GroupPolicyScopeList.class)).thenReturn(new ArrayList<>());
101                 controller.getGroupPolicyScopeEntityData(response);
102                 try {
103                         assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("groupPolicyScopeListDatas"));
104                 } catch (Exception e) {
105                         fail();
106                         logger.error(e.getMessage(),e);
107                 }
108         }
109         
110         @Test
111         public void testGetPSClosedLoopEntityDataByName(){
112                 when(commonClassDao.getDataByColumn(PolicyScopeClosedLoop.class, "name")).thenReturn(data);
113                 controller.getPSClosedLoopEntityDataByName(response);
114                 try {
115                         assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("psClosedLoopDictionaryDatas"));
116                 } catch (Exception e) {
117                         fail();
118                         logger.error(e.getMessage(),e);
119                 }
120         }
121         
122         @Test
123         public void testGetPSClosedLoopEntityData(){
124                 when(commonClassDao.getData(PolicyScopeClosedLoop.class)).thenReturn(new ArrayList<>());
125                 controller.getPSClosedLoopEntityData(response);
126                 try {
127                         assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("psClosedLoopDictionaryDatas"));
128                 } catch (Exception e) {
129                         fail();
130                         logger.error(e.getMessage(),e);
131                 }
132         }
133         
134         @Test
135         public void testGetPSServiceEntityDataByName(){
136                 when(commonClassDao.getDataByColumn(PolicyScopeService.class, "name")).thenReturn(data);
137                 controller.getPSServiceEntityDataByName(response);
138                 try {
139                         assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("psServiceDictionaryDatas"));
140                 } catch (Exception e) {
141                         fail();
142                         logger.error(e.getMessage(),e);
143                 }
144         }
145         
146         @Test
147         public void testGetPSServiceEntityData(){
148                 when(commonClassDao.getData(PolicyScopeService.class)).thenReturn(new ArrayList<>());
149                 controller.getPSServiceEntityData(response);
150                 try {
151                         assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("psServiceDictionaryDatas"));
152                 } catch (Exception e) {
153                         fail();
154                         logger.error(e.getMessage(),e);
155                 }
156         }
157         
158         @Test
159         public void testGetPSTypeEntityDataByName(){
160                 when(commonClassDao.getDataByColumn(PolicyScopeType.class, "name")).thenReturn(data);
161                 controller.getPSTypeEntityDataByName(response);
162                 try {
163                         assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("psTypeDictionaryDatas"));
164                 } catch (Exception e) {
165                         fail();
166                         logger.error(e.getMessage(),e);
167                 }
168         }
169         
170         @Test
171         public void testGetPSTypeEntityData(){
172                 when(commonClassDao.getData(PolicyScopeType.class)).thenReturn(new ArrayList<>());
173                 controller.getPSTypeEntityData(response);
174                 try {
175                         assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("psTypeDictionaryDatas"));
176                 } catch (Exception e) {
177                         fail();
178                         logger.error(e.getMessage(),e);
179                 }
180         }
181         
182         @Test
183         public void testGetPSResourceEntityDataByName(){
184                 when(commonClassDao.getDataByColumn(PolicyScopeResource.class, "name")).thenReturn(data);
185                 controller.getPSResourceEntityDataByName(response);
186                 try {
187                         assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("psResourceDictionaryDatas"));
188                 } catch (Exception e) {
189                         fail();
190                         logger.error(e.getMessage(),e);
191                 }
192         }
193         
194         @Test
195         public void testGetPSResourceEntityData(){
196                 when(commonClassDao.getData(PolicyScopeResource.class)).thenReturn(new ArrayList<>());
197                 controller.getPSResourceEntityData(response);
198                 try {
199                         assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("psResourceDictionaryDatas"));
200                 } catch (Exception e) {
201                         fail();
202                         logger.error(e.getMessage(),e);
203                 }
204         }
205         
206         @Test
207         public void testSavePSGroupScopeDictionary(){
208                 jsonString = "{\"groupPolicyScopeListData\":{\"description\":\"test\",\"groupName\":\"Test\"},\"groupPolicyScopeListData1\":{\"closedloop\":\"SampleClosedLoop\",\"resource\":\"SampleResource\",\"service\":\"SampleService\",\"type\":\"SampleType\"},\"userid\":\"demo\"}";
209                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
210                         when(request.getReader()).thenReturn(br);
211                         controller.savePSGroupScopeDictionary(request, response);
212                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("groupPolicyScopeListDatas"));
213                 }catch(Exception e){
214                         logger.error("Exception"+ e);
215                 } 
216         }
217         
218         @Test
219         public void testUpdatePSGroupScopeDictionary(){
220                 jsonString = "{\"groupPolicyScopeListData\":{\"id\":1,\"description\":\"test\",\"groupName\":\"Test\"},\"groupPolicyScopeListData1\":{\"closedloop\":\"SampleClosedLoop\",\"resource\":\"SampleResource\",\"service\":\"SampleService\",\"type\":\"SampleType\"},\"userid\":\"demo\"}";
221                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
222                         when(request.getReader()).thenReturn(br);
223                         controller.savePSGroupScopeDictionary(request, response);
224                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("groupPolicyScopeListDatas"));
225                 }catch(Exception e){
226                         logger.error("Exception"+ e);
227                 } 
228         }
229         
230         @Test
231         public void testRemovePSGroupScopeDictionary(){
232                 jsonString = "{\"userid\":\"demo\",\"data\":{\"id\":1,\"description\":\"test\",\"name\":\"Test\"}}";
233                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
234                         when(request.getReader()).thenReturn(br);
235                         controller.removePSGroupScopeDictionary(request, response);
236                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("groupPolicyScopeListDatas"));
237                 }catch(Exception e){
238                         logger.error("Exception"+ e);
239                 } 
240         }
241         
242         @Test
243         public void testSavePSClosedLoopDictionary(){
244                 jsonString = "{\"userid\":\"demo\",\"psClosedLoopDictionaryData\":{\"id\":1,\"description\":\"test\",\"name\":\"Test\"}}";
245                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
246                         when(request.getReader()).thenReturn(br);
247                         controller.savePSClosedLoopDictionary(request, response);
248                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("psClosedLoopDictionaryDatas"));
249                 }catch(Exception e){
250                         logger.error("Exception"+ e);
251                 } 
252         }
253         
254         @Test
255         public void testUpdatePSClosedLoopDictionary(){
256                 jsonString = "{\"userid\":\"demo\",\"psClosedLoopDictionaryData\":{\"description\":\"test\",\"name\":\"Test\"}}";
257                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
258                         when(request.getReader()).thenReturn(br);
259                         controller.savePSClosedLoopDictionary(request, response);
260                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("psClosedLoopDictionaryDatas"));
261                 }catch(Exception e){
262                         logger.error("Exception"+ e);
263                 } 
264         }
265         
266         @Test
267         public void testRemovePSClosedLoopDictionary(){
268                 jsonString = "{\"userid\":\"demo\",\"data\":{\"id\":1,\"description\":\"test\",\"name\":\"Test\"}}";
269                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
270                         when(request.getReader()).thenReturn(br);
271                         controller.removePSClosedLoopDictionary(request, response);
272                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("psClosedLoopDictionaryDatas"));
273                 }catch(Exception e){
274                         logger.error("Exception"+ e);
275                 } 
276         }
277         
278         @Test
279         public void testSavePSServiceDictionary(){
280                 jsonString = "{\"userid\":\"demo\",\"psServiceDictionaryData\":{\"id\":1,\"description\":\"test\",\"name\":\"Test\"}}";
281                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
282                         when(request.getReader()).thenReturn(br);
283                         controller.savePSServiceDictionary(request, response);
284                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("psServiceDictionaryDatas"));
285                 }catch(Exception e){
286                         logger.error("Exception"+ e);
287                 } 
288         }
289         
290         @Test
291         public void testUpdatePSServiceDictionary(){
292                 jsonString = "{\"userid\":\"demo\",\"psServiceDictionaryData\":{\"description\":\"test\",\"name\":\"Test\"}}";
293                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
294                         when(request.getReader()).thenReturn(br);
295                         controller.savePSServiceDictionary(request, response);
296                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("psServiceDictionaryDatas"));
297                 }catch(Exception e){
298                         logger.error("Exception"+ e);
299                 } 
300         }
301         
302         @Test
303         public void testRemovePSServiceDictionary(){
304                 jsonString = "{\"userid\":\"demo\",\"data\":{\"id\":1,\"description\":\"test\",\"name\":\"Test\"}}";
305                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
306                         when(request.getReader()).thenReturn(br);
307                         controller.removePSServiceDictionary(request, response);
308                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("psServiceDictionaryDatas"));
309                 }catch(Exception e){
310                         logger.error("Exception"+ e);
311                 } 
312         }
313         
314         @Test
315         public void testSavePSTypeDictionary(){
316                 jsonString = "{\"userid\":\"demo\",\"psTypeDictionaryData\":{\"description\":\"test\",\"name\":\"Test\"}}";
317                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
318                         when(request.getReader()).thenReturn(br);
319                         controller.savePSTypeDictionary(request, response);
320                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("psTypeDictionaryDatas"));
321                 }catch(Exception e){
322                         logger.error("Exception"+ e);
323                 } 
324         }
325         
326         @Test
327         public void testUpdatePSTypeDictionary(){
328                 jsonString = "{\"userid\":\"demo\",\"psTypeDictionaryData\":{\"id\":1,\"description\":\"test\",\"name\":\"Test\"}}";
329                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
330                         when(request.getReader()).thenReturn(br);
331                         controller.savePSTypeDictionary(request, response);
332                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("psTypeDictionaryDatas"));
333                 }catch(Exception e){
334                         logger.error("Exception"+ e);
335                 } 
336         }
337         
338         @Test
339         public void testRemovePSTypeDictionary(){
340                 jsonString = "{\"userid\":\"demo\",\"data\":{\"id\":1,\"description\":\"test\",\"name\":\"Test\"}}";
341                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
342                         when(request.getReader()).thenReturn(br);
343                         controller.removePSTypeDictionary(request, response);
344                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("psTypeDictionaryDatas"));
345                 }catch(Exception e){
346                         logger.error("Exception"+ e);
347                 } 
348         }
349         
350         @Test
351         public void testSavePSResourceDictionary(){
352                 jsonString = "{\"userid\":\"demo\",\"psResourceDictionaryData\":{\"description\":\"test\",\"name\":\"Test\"}}";
353                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
354                         when(request.getReader()).thenReturn(br);
355                         controller.savePSResourceDictionary(request, response);
356                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("psResourceDictionaryDatas"));
357                 }catch(Exception e){
358                         logger.error("Exception"+ e);
359                 } 
360         }
361         
362         @Test
363         public void testUpdatePSResourceDictionary(){
364                 jsonString = "{\"userid\":\"demo\",\"psResourceDictionaryData\":{\"id\":1,\"description\":\"test\",\"name\":\"Test\"}}";
365                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
366                         when(request.getReader()).thenReturn(br);
367                         controller.savePSResourceDictionary(request, response);
368                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("psResourceDictionaryDatas"));
369                 }catch(Exception e){
370                         logger.error("Exception"+ e);
371                 } 
372         }
373         
374         @Test
375         public void testRemovePSResourceDictionary(){
376                 jsonString = "{\"userid\":\"demo\",\"data\":{\"id\":1,\"description\":\"test\",\"name\":\"Test\"}}";
377                 try(BufferedReader br = new BufferedReader(new StringReader(jsonString))){
378                         when(request.getReader()).thenReturn(br);
379                         controller.removePSResourceDictionary(request, response);
380                         assertTrue( response.getContentAsString() != null && response.getContentAsString().contains("psResourceDictionaryDatas"));
381                 }catch(Exception e){
382                         logger.error("Exception"+ e);
383                 } 
384         }
385 }