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