20bb3e8b81005c96e1e73a4150dab232b3e855c4
[portal.git] / ecomp-portal-BE-common / src / test / java / org / onap / portalapp / portal / controller / PortalAdminControllerTest.java
1
2 /*-
3  * ============LICENSE_START==========================================
4  * ONAP Portal
5  * ===================================================================
6  * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
7  * ===================================================================
8  *
9  * Unless otherwise specified, all software contained herein is licensed
10  * under the Apache License, Version 2.0 (the "License");
11  * you may not use this software except in compliance with the License.
12  * You may obtain a copy of the License at
13  *
14  *             http://www.apache.org/licenses/LICENSE-2.0
15  *
16  * Unless required by applicable law or agreed to in writing, software
17  * distributed under the License is distributed on an "AS IS" BASIS,
18  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19  * See the License for the specific language governing permissions and
20  * limitations under the License.
21  *
22  * Unless otherwise specified, all documentation contained herein is licensed
23  * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
24  * you may not use this documentation except in compliance with the License.
25  * You may obtain a copy of the License at
26  *
27  *             https://creativecommons.org/licenses/by/4.0/
28  *
29  * Unless required by applicable law or agreed to in writing, documentation
30  * distributed under the License is distributed on an "AS IS" BASIS,
31  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
32  * See the License for the specific language governing permissions and
33  * limitations under the License.
34  *
35  * ============LICENSE_END============================================
36  *
37  * 
38  */package org.onap.portalapp.portal.controller;
39
40 import static org.junit.Assert.assertEquals;
41 import static org.junit.Assert.assertNull;
42
43 import java.util.ArrayList;
44 import java.util.List;
45
46 import javax.servlet.http.HttpServletRequest;
47 import javax.servlet.http.HttpServletResponse;
48
49 import org.junit.Before;
50 import org.junit.Test;
51 import org.mockito.InjectMocks;
52 import org.mockito.Matchers;
53 import org.mockito.Mock;
54 import org.mockito.Mockito;
55 import org.mockito.MockitoAnnotations;
56 import org.onap.portalapp.portal.controller.PortalAdminController;
57 import org.onap.portalapp.portal.core.MockEPUser;
58 import org.onap.portalapp.portal.domain.EPRole;
59 import org.onap.portalapp.portal.domain.EPUser;
60 import org.onap.portalapp.portal.exceptions.NoHealthyServiceException;
61 import org.onap.portalapp.portal.framework.MockitoTestSuite;
62 import org.onap.portalapp.portal.service.AdminRolesService;
63 import org.onap.portalapp.portal.service.AdminRolesServiceImpl;
64 import org.onap.portalapp.portal.service.PortalAdminService;
65 import org.onap.portalapp.portal.service.PortalAdminServiceImpl;
66 import org.onap.portalapp.portal.transport.FieldsValidator;
67 import org.onap.portalapp.portal.transport.PortalAdmin;
68 import org.onap.portalapp.portal.utils.EcompPortalUtils;
69 import org.onap.portalapp.util.EPUserUtils;
70 import org.onap.portalsdk.core.service.AuditService;
71 import org.onap.portalsdk.core.service.AuditServiceImpl;
72
73 public class PortalAdminControllerTest extends MockitoTestSuite{
74
75         @InjectMocks
76         PortalAdminController portalAdminController = new PortalAdminController();
77
78         @Mock
79         AdminRolesService adminRolesService = new AdminRolesServiceImpl();
80         
81         @Mock
82         PortalAdminService portalAdminService = new PortalAdminServiceImpl();
83
84         @Mock
85         AuditService auditService = new AuditServiceImpl();
86
87          
88         @Mock
89         EcompPortalUtils ecompPortalUtils = new EcompPortalUtils();
90
91         @Before
92         public void setup() {
93                 MockitoAnnotations.initMocks(this);
94         }
95
96         MockitoTestSuite mockitoTestSuite = new MockitoTestSuite();
97
98         HttpServletRequest mockedRequest = mockitoTestSuite.getMockedRequest();
99         HttpServletResponse mockedResponse = mockitoTestSuite.getMockedResponse();
100         NullPointerException nullPointerException = new NullPointerException();
101
102         @Mock
103         EPUserUtils ePUserUtils = new EPUserUtils();
104
105         MockEPUser mockUser = new MockEPUser();
106         
107         
108         @Test
109         public void getPortalAdminsTest()
110         {
111                 EPUser user = mockUser.mockEPUser();
112                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
113                 List<PortalAdmin> expectedPortalAdminsList = new ArrayList<PortalAdmin>();
114                 PortalAdmin portalAdmin= new PortalAdmin();
115                 
116                 portalAdmin.setUserId((long) 1);
117                 portalAdmin.setLoginId("guestT");
118                 portalAdmin.setFirstName("Test_FirstName");
119                 portalAdmin.setLastName("Test_LastName");
120                 
121                 expectedPortalAdminsList.add(portalAdmin);
122                 
123                 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true);
124                 
125          Mockito.when(portalAdminService.getPortalAdmins()).thenReturn(expectedPortalAdminsList);
126          List<PortalAdmin> actualPortalAdminsList =  portalAdminController.getPortalAdmins(mockedRequest, mockedResponse);
127          assertEquals(actualPortalAdminsList,expectedPortalAdminsList);
128
129         }
130 //      @Test
131 //      public void getPortalAdminsIfUserIsNullTest()
132 //      {
133 //              EPUser user = null;
134 //              Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
135 //
136 //         assertNull(portalAdminController.getPortalAdmins(mockedRequest, mockedResponse));
137 //
138 //      }
139         
140         @Test
141         public void getPortalAdminsIfUserIsSuperAdminTest()
142         {
143                 EPUser user = mockUser.mockEPUser();
144                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
145                 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(false);
146                  assertNull(portalAdminController.getPortalAdmins(mockedRequest, mockedResponse));
147
148         }
149         
150         
151         
152         @Test
153         public void createPortalAdminTest()
154         {
155                 EPUser user = mockUser.mockEPUser();
156                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
157         
158                 FieldsValidator expectedFieldValidator = new FieldsValidator();
159                 expectedFieldValidator.setHttpStatusCode((long) 200);
160                 expectedFieldValidator.setFields(null);
161                 expectedFieldValidator.setErrorCode(null);
162                 FieldsValidator actualFieldValidator = new FieldsValidator();
163                 String sbcid = "Test";
164                 
165                 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true);
166                 Mockito.when(portalAdminService.createPortalAdmin(sbcid)).thenReturn(expectedFieldValidator);
167                 actualFieldValidator = portalAdminController.createPortalAdmin(mockedRequest, sbcid, mockedResponse);
168         assertEquals(actualFieldValidator,expectedFieldValidator);
169
170         }
171         
172
173                 
174         @Test
175         public void createPortalAdminIfUserIsNullTest()
176         {
177                 EPUser user = null;
178                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(null);
179                 String sbcid = "null";
180                 assertNull(portalAdminController.createPortalAdmin(mockedRequest, sbcid, mockedResponse));
181
182         }
183         
184         @Test
185         public void createPortalAdminIfUserIsSuperAdminTest()
186         {
187                 EPUser user = mockUser.mockEPUser();
188                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
189                 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(false);
190                 String sbcid = "Test";
191                 assertNull(portalAdminController.createPortalAdmin(mockedRequest, sbcid, mockedResponse));
192
193         }
194         
195         @Test
196         public void deletePortalAdminTest()
197         {
198                 EPUser user = mockUser.mockEPUser();
199                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
200                 List<PortalAdmin> expectedPortalAdminsList = new ArrayList<PortalAdmin>();
201                 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true);
202             Mockito.when(portalAdminService.deletePortalAdmin(12L)).thenReturn(null);
203          FieldsValidator actualPortalAdminsList =  portalAdminController.deletePortalAdmin(mockedRequest, "test", mockedResponse);
204          assertNull(actualPortalAdminsList);
205
206         }
207         
208         @Test
209         public void deletePortalAdminTest1()
210         {
211                 EPUser user = mockUser.mockEPUser();
212                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
213                 String sbcid = "Test";
214                 List<PortalAdmin> expectedPortalAdminsList = new ArrayList<PortalAdmin>();
215                 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(false);
216             Mockito.when(portalAdminService.deletePortalAdmin(112L)).thenReturn(null);
217          FieldsValidator actualPortalAdminsList =  portalAdminController.deletePortalAdmin(mockedRequest, "112-1", mockedResponse);
218          assertNull(actualPortalAdminsList);
219
220         }
221         
222         @Test
223         public void deletePortalAdminTest2()
224         {
225                 EPUser user = mockUser.mockEPUser();
226                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
227         
228                 FieldsValidator expectedFieldValidator = new FieldsValidator();
229                 expectedFieldValidator.setHttpStatusCode((long) 200);
230                 expectedFieldValidator.setFields(null);
231                 expectedFieldValidator.setErrorCode(null);
232                 FieldsValidator actualFieldValidator = new FieldsValidator();
233                 //String sbcid = "Test";
234                 Long userId=123L;
235                 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true);
236                 Mockito.when(portalAdminService.deletePortalAdmin(userId)).thenReturn(expectedFieldValidator);
237                 actualFieldValidator = portalAdminController.deletePortalAdmin(mockedRequest,"123-Test" , mockedResponse);
238         assertEquals(actualFieldValidator,expectedFieldValidator);
239
240         }
241
242         @Test
243         public void getRolesByAppsTest()
244         {
245                 EPUser user = mockUser.mockEPUser();
246                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
247                 List<EPRole> expectedgetAppsList = new ArrayList<EPRole>();
248                 EPRole epRole= new EPRole();
249                 epRole.setName("Test");
250                 epRole.setActive(true);
251                 epRole.setPriority(1);
252                 epRole.setAppId(12L);
253                 epRole.setId(1111L);
254                 expectedgetAppsList.add(epRole);
255                 Mockito.when(adminRolesService.getRolesByApp(user,12L)).thenReturn(expectedgetAppsList);
256                 //Mockito.when(portalAdminService.deletePortalAdmin(userId)).thenReturn(expectedFieldValidator);
257                 List<EPRole> actualgetAppsList = portalAdminController.getRolesByApp(mockedRequest,12L , mockedResponse);
258         assertEquals(actualgetAppsList,expectedgetAppsList);
259
260         }
261
262         @Test
263         public void getRolesByAppsWhenUserIsNullTest()
264         {
265                 EPUser user = mockUser.mockEPUser();
266                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(null);
267                 List<EPRole> expectedgetAppsList = new ArrayList<EPRole>();
268                 EPRole epRole= new EPRole();
269                 expectedgetAppsList.add(epRole);
270                 Mockito.when(adminRolesService.getRolesByApp(user,12L)).thenReturn(expectedgetAppsList);
271                 List<EPRole> actualgetAppsList = portalAdminController.getRolesByApp(mockedRequest,12L , mockedResponse);
272         assertNull(actualgetAppsList);
273
274         }
275                         
276 }