1 package org.openecomp.portalapp.portal.test.controller;
3 import static org.junit.Assert.assertEquals;
5 import java.util.ArrayList;
8 import javax.servlet.http.HttpServletRequest;
9 import javax.servlet.http.HttpServletResponse;
11 import org.junit.Before;
12 import org.junit.Test;
13 import org.mockito.InjectMocks;
14 import org.mockito.Mock;
15 import org.mockito.Mockito;
16 import org.mockito.MockitoAnnotations;
17 import org.openecomp.portalapp.portal.controller.BasicAuthAccountController;
18 import org.openecomp.portalapp.portal.domain.BasicAuthCredentials;
19 import org.openecomp.portalapp.portal.domain.EPEndpoint;
20 import org.openecomp.portalapp.portal.domain.EPUser;
21 import org.openecomp.portalapp.portal.ecomp.model.PortalRestResponse;
22 import org.openecomp.portalapp.portal.ecomp.model.PortalRestStatusEnum;
23 import org.openecomp.portalapp.portal.service.AdminRolesService;
24 import org.openecomp.portalapp.portal.service.AdminRolesServiceImpl;
25 import org.openecomp.portalapp.portal.service.BasicAuthAccountService;
26 import org.openecomp.portalapp.portal.service.BasicAuthAccountServiceImpl;
27 import org.openecomp.portalapp.portal.test.core.MockEPUser;
28 import org.openecomp.portalapp.test.framework.MockitoTestSuite;
29 import org.openecomp.portalapp.util.EPUserUtils;
31 public class BasicAuthAccountControllerTest extends MockitoTestSuite {
34 BasicAuthAccountService basicAuthAccountService = new BasicAuthAccountServiceImpl();
37 AdminRolesService adminRolesService = new AdminRolesServiceImpl();
40 BasicAuthAccountController basicAuthAccountController = new BasicAuthAccountController();
44 MockitoAnnotations.initMocks(this);
47 MockitoTestSuite mockitoTestSuite = new MockitoTestSuite();
49 HttpServletRequest mockedRequest = mockitoTestSuite.getMockedRequest();
50 HttpServletResponse mockedResponse = mockitoTestSuite.getMockedResponse();
51 NullPointerException nullPointerException = new NullPointerException();
54 EPUserUtils ePUserUtils = new EPUserUtils();
56 MockEPUser mockUser = new MockEPUser();
58 public BasicAuthCredentials basicAuthCredentials() {
59 BasicAuthCredentials basicAuthCredentials = new BasicAuthCredentials();
61 basicAuthCredentials.setId((long) 1);
62 basicAuthCredentials.setApplicationName("test");
63 basicAuthCredentials.setUsername("Test");
64 basicAuthCredentials.setPassword("Password");
65 basicAuthCredentials.setIsActive("YES");
67 List<EPEndpoint> endpoints = new ArrayList<EPEndpoint>();
69 EPEndpoint ePEndpoint = new EPEndpoint();
70 ePEndpoint.setId((long) 1);
71 ePEndpoint.setName("Test");
72 endpoints.add(ePEndpoint);
73 basicAuthCredentials.setEndpoints(endpoints);
75 return basicAuthCredentials;
80 public void createBasicAuthAccountTest() throws Exception {
81 BasicAuthCredentials basicAuthCredentials = basicAuthCredentials();
83 EPUser user = mockUser.mockEPUser();
84 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
85 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true);
86 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
87 expectedResponse.setMessage("SUCCESS");
88 expectedResponse.setResponse("");
89 PortalRestStatusEnum portalRestStatusEnum = null;
90 expectedResponse.setStatus(portalRestStatusEnum.OK);
93 Mockito.when(basicAuthAccountService.saveBasicAuthAccount(basicAuthCredentials)).thenReturn(accountd);
95 PortalRestResponse<String> actualResponse = basicAuthAccountController.createBasicAuthAccount(mockedRequest,
96 mockedResponse, basicAuthCredentials);
97 assertEquals(actualResponse, expectedResponse);
101 public void createBasicAuthAccountAdminTest() throws Exception {
102 BasicAuthCredentials basicAuthCredentials = basicAuthCredentials();
103 EPUser user = mockUser.mockEPUser();
104 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
105 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(false);
106 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
107 expectedResponse.setMessage("Authorization Required");
108 expectedResponse.setResponse("Admin Only Operation! ");
109 PortalRestStatusEnum portalRestStatusEnum = null;
110 expectedResponse.setStatus(portalRestStatusEnum.ERROR);
112 PortalRestResponse<String> actualResponse = basicAuthAccountController.createBasicAuthAccount(mockedRequest,
113 mockedResponse, basicAuthCredentials);
114 assertEquals(actualResponse, expectedResponse);
118 public void createBasicAuthAccountIfInputNullTest() throws Exception {
119 BasicAuthCredentials basicAuthCredentials = null;
120 EPUser user = mockUser.mockEPUser();
121 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
122 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true);
123 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
124 expectedResponse.setMessage("FAILURE");
125 expectedResponse.setResponse("newBasicAuthAccount cannot be null or empty");
126 PortalRestStatusEnum portalRestStatusEnum = null;
127 expectedResponse.setStatus(portalRestStatusEnum.ERROR);
128 PortalRestResponse<String> actualResponse = basicAuthAccountController.createBasicAuthAccount(mockedRequest,
129 mockedResponse, basicAuthCredentials);
130 assertEquals(actualResponse, expectedResponse);
134 public void getBasicAuthAccountTest() throws Exception {
135 PortalRestResponse<List<BasicAuthCredentials>> expectedPortalResponse = new PortalRestResponse<List<BasicAuthCredentials>>();
136 List<BasicAuthCredentials> basicAuthCredentialsList = new ArrayList<BasicAuthCredentials>();
137 BasicAuthCredentials basicAuthCredentials = basicAuthCredentials();
138 basicAuthCredentialsList.add(basicAuthCredentials);
140 expectedPortalResponse.setMessage("Success");
141 expectedPortalResponse.setResponse(null);
142 PortalRestStatusEnum portalRestStatusEnum = null;
143 expectedPortalResponse.setStatus(portalRestStatusEnum.OK);
145 EPUser user = mockUser.mockEPUser();
146 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
148 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true);
149 Mockito.when(basicAuthAccountService.getAccountData()).thenReturn(null);
150 PortalRestResponse<List<BasicAuthCredentials>> actualResponse = basicAuthAccountController
151 .getBasicAuthAccount(mockedRequest, mockedResponse);
152 assertEquals(expectedPortalResponse, actualResponse);
156 public void getBasicAuthAccountIfSuperAdminTest() throws Exception {
157 PortalRestResponse<List<BasicAuthCredentials>> expectedPortalResponse = new PortalRestResponse<List<BasicAuthCredentials>>();
158 List<BasicAuthCredentials> basicAuthCredentialsList = new ArrayList<BasicAuthCredentials>();
159 BasicAuthCredentials basicAuthCredentials = basicAuthCredentials();
160 basicAuthCredentialsList.add(basicAuthCredentials);
162 expectedPortalResponse.setMessage("UnAuthorized! Admin Only Operation");
163 expectedPortalResponse.setResponse(new ArrayList<>());
164 PortalRestStatusEnum portalRestStatusEnum = null;
165 expectedPortalResponse.setStatus(portalRestStatusEnum.ERROR);
167 EPUser user = mockUser.mockEPUser();
168 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
170 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(false);
171 Mockito.when(basicAuthAccountService.getAccountData()).thenReturn(null);
172 PortalRestResponse<List<BasicAuthCredentials>> actualResponse = basicAuthAccountController
173 .getBasicAuthAccount(mockedRequest, mockedResponse);
174 assertEquals(expectedPortalResponse, actualResponse);
178 public void updateAccountTest() throws Exception {
179 BasicAuthCredentials basicAuthCredentials = basicAuthCredentials();
180 EPUser user = mockUser.mockEPUser();
181 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
182 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true);
183 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
184 expectedResponse.setMessage("SUCCESS");
185 expectedResponse.setResponse("");
186 PortalRestStatusEnum portalRestStatusEnum = null;
187 expectedResponse.setStatus(portalRestStatusEnum.OK);
189 PortalRestResponse<String> actualResponse = basicAuthAccountController.updateAccount(mockedRequest,
190 mockedResponse, accountd, basicAuthCredentials);
191 assertEquals(actualResponse, expectedResponse);
195 public void updateAccountIfSuperAdminTest() throws Exception {
196 BasicAuthCredentials basicAuthCredentials = basicAuthCredentials();
198 EPUser user = mockUser.mockEPUser();
199 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
200 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(false);
201 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
202 expectedResponse.setMessage("Authorization Required");
203 expectedResponse.setResponse("Admin Only Operation! ");
204 PortalRestStatusEnum portalRestStatusEnum = null;
205 expectedResponse.setStatus(portalRestStatusEnum.ERROR);
207 PortalRestResponse<String> actualResponse = basicAuthAccountController.updateAccount(mockedRequest,
208 mockedResponse, accountd, basicAuthCredentials);
209 assertEquals(actualResponse, expectedResponse);
213 public void updateAccountIfInputNullTest() throws Exception {
214 BasicAuthCredentials basicAuthCredentials = null;
216 EPUser user = mockUser.mockEPUser();
217 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
218 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true);
219 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
220 expectedResponse.setMessage("FAILURE");
221 expectedResponse.setResponse("BasicAuthCredentials cannot be null or empty");
222 PortalRestStatusEnum portalRestStatusEnum = null;
223 expectedResponse.setStatus(portalRestStatusEnum.ERROR);
225 PortalRestResponse<String> actualResponse = basicAuthAccountController.updateAccount(mockedRequest,
226 mockedResponse, accountd, basicAuthCredentials);
227 assertEquals(actualResponse, expectedResponse);
231 public void deleteAccountTest() throws Exception {
232 EPUser user = mockUser.mockEPUser();
233 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
235 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
236 expectedResponse.setMessage("SUCCESS");
237 expectedResponse.setResponse("");
238 PortalRestStatusEnum portalRestStatusEnum = null;
239 expectedResponse.setStatus(portalRestStatusEnum.OK);
241 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true);
242 PortalRestResponse<String> actualResponse = basicAuthAccountController.deleteAccount(mockedRequest,
243 mockedResponse, accountd);
244 assertEquals(actualResponse, expectedResponse);
248 public void deleteAccountIfNotSuperAdminTest() throws Exception {
249 EPUser user = mockUser.mockEPUser();
250 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user);
252 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
253 expectedResponse.setMessage("Authorization Required");
254 expectedResponse.setResponse("Admin Only Operation! ");
255 PortalRestStatusEnum portalRestStatusEnum = null;
256 expectedResponse.setStatus(portalRestStatusEnum.ERROR);
258 Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(false);
259 PortalRestResponse<String> actualResponse = basicAuthAccountController.deleteAccount(mockedRequest,
260 mockedResponse, accountd);
261 System.out.println(actualResponse);
262 assertEquals(actualResponse, expectedResponse);