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.externalsystemapproval.model.ExternalSystemRoleApproval;
18 import org.openecomp.portalapp.externalsystemapproval.model.ExternalSystemUser;
19 import org.openecomp.portalapp.portal.controller.RolesApprovalSystemController;
20 import org.openecomp.portalapp.portal.ecomp.model.PortalRestResponse;
21 import org.openecomp.portalapp.portal.ecomp.model.PortalRestStatusEnum;
22 import org.openecomp.portalapp.portal.service.UserRolesService;
23 import org.openecomp.portalapp.portal.transport.ExternalRequestFieldsValidator;
24 import org.openecomp.portalapp.test.framework.MockitoTestSuite;
26 public class RolesApprovalSystemControllerTest extends MockitoTestSuite {
29 UserRolesService userRolesService;
32 RolesApprovalSystemController rolesApprovalSystemController = new RolesApprovalSystemController();
34 MockitoTestSuite mockitoTestSuite = new MockitoTestSuite();
36 HttpServletRequest mockedRequest = mockitoTestSuite.getMockedRequest();
37 HttpServletResponse mockedResponse = mockitoTestSuite.getMockedResponse();
38 NullPointerException nullPointerException = new NullPointerException();
42 MockitoAnnotations.initMocks(this);
46 public void postUserProfileIfRolesNullTest() {
47 PortalRestResponse<String> expectedportalRestResponse = new PortalRestResponse<String>();
48 expectedportalRestResponse.setMessage("Request has no roles");
49 expectedportalRestResponse.setResponse("save user profile failed");
50 expectedportalRestResponse.setStatus(PortalRestStatusEnum.ERROR);
51 ExternalSystemUser extSysUser = new ExternalSystemUser();
52 extSysUser.setApplicationName("Test_App");
53 extSysUser.setLoginId("1");
54 extSysUser.setMyloginrequestId("Test");
55 List<ExternalSystemRoleApproval> externalSystemRoleApprovalList = null;
56 extSysUser.setRoles(externalSystemRoleApprovalList);
58 PortalRestResponse<String> actualportalRestResponse = rolesApprovalSystemController
59 .postUserProfile(mockedRequest, extSysUser, mockedResponse);
60 assertEquals(expectedportalRestResponse, actualportalRestResponse);
64 public void postUserProfileTest() {
65 PortalRestResponse<String> expectedportalRestResponse = new PortalRestResponse<String>();
66 expectedportalRestResponse.setMessage("Saved Successfully");
67 expectedportalRestResponse.setResponse("Success");
68 expectedportalRestResponse.setStatus(PortalRestStatusEnum.OK);
69 ExternalSystemUser extSysUser = new ExternalSystemUser();
70 extSysUser.setApplicationName("Test_App");
71 extSysUser.setLoginId("1");
72 extSysUser.setMyloginrequestId("Test");
73 List<ExternalSystemRoleApproval> externalSystemRoleApprovalList = new ArrayList<ExternalSystemRoleApproval>();
74 ExternalSystemRoleApproval externalSystemRoleApproval = new ExternalSystemRoleApproval();
75 externalSystemRoleApprovalList.add(externalSystemRoleApproval);
76 extSysUser.setRoles(externalSystemRoleApprovalList);
77 ExternalRequestFieldsValidator externalRequestFieldsValidator = new ExternalRequestFieldsValidator(true,
78 "Saved Successfully");
80 Mockito.when(userRolesService.setExternalRequestUserAppRole(extSysUser, "POST"))
81 .thenReturn(externalRequestFieldsValidator);
82 PortalRestResponse<String> actualportalRestResponse = rolesApprovalSystemController
83 .postUserProfile(mockedRequest, extSysUser, mockedResponse);
84 assertEquals(expectedportalRestResponse, actualportalRestResponse);
88 public void postUserProfileFailureTest() {
89 PortalRestResponse<String> expectedportalRestResponse = new PortalRestResponse<String>();
90 expectedportalRestResponse.setMessage("Received Bad String");
91 expectedportalRestResponse.setResponse("save user profile failed");
92 expectedportalRestResponse.setStatus(PortalRestStatusEnum.ERROR);
93 ExternalSystemUser extSysUser = new ExternalSystemUser();
94 extSysUser.setApplicationName("Test_App");
95 extSysUser.setLoginId("1");
96 extSysUser.setMyloginrequestId("Test");
97 List<ExternalSystemRoleApproval> externalSystemRoleApprovalList = new ArrayList<ExternalSystemRoleApproval>();
98 ExternalSystemRoleApproval externalSystemRoleApproval = new ExternalSystemRoleApproval();
99 externalSystemRoleApprovalList.add(externalSystemRoleApproval);
100 extSysUser.setRoles(externalSystemRoleApprovalList);
101 ExternalRequestFieldsValidator externalRequestFieldsValidator = new ExternalRequestFieldsValidator(false,
102 "Received Bad String");
103 Mockito.when(userRolesService.setExternalRequestUserAppRole(extSysUser, "POST"))
104 .thenReturn(externalRequestFieldsValidator);
106 PortalRestResponse<String> actualportalRestResponse = rolesApprovalSystemController
107 .postUserProfile(mockedRequest, extSysUser, mockedResponse);
108 assertEquals(expectedportalRestResponse, actualportalRestResponse);
112 public void postUserProfileExceptionTest() {
113 PortalRestResponse<String> expectedportalRestResponse = new PortalRestResponse<String>();
114 expectedportalRestResponse.setMessage(null);
115 expectedportalRestResponse.setResponse("save user profile failed");
116 expectedportalRestResponse.setStatus(PortalRestStatusEnum.ERROR);
117 ExternalSystemUser extSysUser = new ExternalSystemUser();
118 extSysUser.setApplicationName("Test_App");
119 extSysUser.setLoginId("1");
120 extSysUser.setMyloginrequestId("Test");
121 List<ExternalSystemRoleApproval> externalSystemRoleApprovalList = new ArrayList<ExternalSystemRoleApproval>();
122 ExternalSystemRoleApproval externalSystemRoleApproval = new ExternalSystemRoleApproval();
123 externalSystemRoleApprovalList.add(externalSystemRoleApproval);
124 extSysUser.setRoles(externalSystemRoleApprovalList);
125 Mockito.when(userRolesService.setExternalRequestUserAppRole(extSysUser, "POST")).thenThrow(nullPointerException);
126 PortalRestResponse<String> actualportalRestResponse = rolesApprovalSystemController
127 .postUserProfile(mockedRequest, extSysUser, mockedResponse);
128 assertEquals(expectedportalRestResponse, actualportalRestResponse);
132 public void putUserProfileIfLoginIdNullTest() {
133 PortalRestResponse<String> expectedportalRestResponse = new PortalRestResponse<String>();
134 expectedportalRestResponse.setMessage("Request has no login ID");
135 expectedportalRestResponse.setResponse("save user profile failed");
136 expectedportalRestResponse.setStatus(PortalRestStatusEnum.ERROR);
137 ExternalSystemUser extSysUser = new ExternalSystemUser();
138 extSysUser.setApplicationName("Test_App");
139 extSysUser.setLoginId(null);
140 extSysUser.setMyloginrequestId("Test");
141 List<ExternalSystemRoleApproval> externalSystemRoleApprovalList = new ArrayList<ExternalSystemRoleApproval>();
142 extSysUser.setRoles(externalSystemRoleApprovalList);
143 PortalRestResponse<String> actualportalRestResponse = rolesApprovalSystemController
144 .putUserProfile(mockedRequest, extSysUser, mockedResponse);
145 assertEquals(expectedportalRestResponse, actualportalRestResponse);
149 public void putUserProfileTest() {
150 PortalRestResponse<String> expectedportalRestResponse = new PortalRestResponse<String>();
151 expectedportalRestResponse.setMessage("Updated Successfully");
152 expectedportalRestResponse.setResponse("Success");
153 expectedportalRestResponse.setStatus(PortalRestStatusEnum.OK);
154 ExternalSystemUser extSysUser = new ExternalSystemUser();
155 extSysUser.setApplicationName("Test_App");
156 extSysUser.setLoginId("1");
157 extSysUser.setMyloginrequestId("Test");
158 List<ExternalSystemRoleApproval> externalSystemRoleApprovalList = new ArrayList<ExternalSystemRoleApproval>();
159 ExternalSystemRoleApproval externalSystemRoleApproval = new ExternalSystemRoleApproval();
160 externalSystemRoleApprovalList.add(externalSystemRoleApproval);
161 extSysUser.setRoles(externalSystemRoleApprovalList);
162 ExternalRequestFieldsValidator externalRequestFieldsValidator = new ExternalRequestFieldsValidator(true,
163 "Updated Successfully");
165 Mockito.when(userRolesService.setExternalRequestUserAppRole(extSysUser, "PUT"))
166 .thenReturn(externalRequestFieldsValidator);
167 PortalRestResponse<String> actualportalRestResponse = rolesApprovalSystemController
168 .putUserProfile(mockedRequest, extSysUser, mockedResponse);
169 assertEquals(expectedportalRestResponse, actualportalRestResponse);
173 public void putUserProfileFailureTest() {
174 PortalRestResponse<String> expectedportalRestResponse = new PortalRestResponse<String>();
175 expectedportalRestResponse.setMessage("Received Bad String");
176 expectedportalRestResponse.setResponse("save user profile failed");
177 expectedportalRestResponse.setStatus(PortalRestStatusEnum.ERROR);
178 ExternalSystemUser extSysUser = new ExternalSystemUser();
179 extSysUser.setApplicationName("Test_App");
180 extSysUser.setLoginId("1");
181 extSysUser.setMyloginrequestId("Test");
182 List<ExternalSystemRoleApproval> externalSystemRoleApprovalList = new ArrayList<ExternalSystemRoleApproval>();
183 ExternalSystemRoleApproval externalSystemRoleApproval = new ExternalSystemRoleApproval();
184 externalSystemRoleApprovalList.add(externalSystemRoleApproval);
185 extSysUser.setRoles(externalSystemRoleApprovalList);
186 ExternalRequestFieldsValidator externalRequestFieldsValidator = new ExternalRequestFieldsValidator(false,
187 "Received Bad String");
189 Mockito.when(userRolesService.setExternalRequestUserAppRole(extSysUser, "PUT"))
190 .thenReturn(externalRequestFieldsValidator);
191 PortalRestResponse<String> actualportalRestResponse = rolesApprovalSystemController
192 .putUserProfile(mockedRequest, extSysUser, mockedResponse);
194 assertEquals(expectedportalRestResponse, actualportalRestResponse);
198 public void putUserProfileExceptionTest() {
199 PortalRestResponse<String> expectedportalRestResponse = new PortalRestResponse<String>();
200 expectedportalRestResponse.setMessage(null);
201 expectedportalRestResponse.setResponse("save user profile failed");
202 expectedportalRestResponse.setStatus(PortalRestStatusEnum.ERROR);
203 ExternalSystemUser extSysUser = new ExternalSystemUser();
204 extSysUser.setApplicationName("Test_App");
205 extSysUser.setLoginId("1");
206 extSysUser.setMyloginrequestId("Test");
207 List<ExternalSystemRoleApproval> externalSystemRoleApprovalList = new ArrayList<ExternalSystemRoleApproval>();
208 ExternalSystemRoleApproval externalSystemRoleApproval = new ExternalSystemRoleApproval();
209 externalSystemRoleApprovalList.add(externalSystemRoleApproval);
210 extSysUser.setRoles(externalSystemRoleApprovalList);
211 Mockito.when(userRolesService.setExternalRequestUserAppRole(extSysUser, "PUT")).thenThrow(nullPointerException);
212 PortalRestResponse<String> actualportalRestResponse = rolesApprovalSystemController
213 .putUserProfile(mockedRequest, extSysUser, mockedResponse);
215 assertEquals(expectedportalRestResponse, actualportalRestResponse);
219 public void deleteUserProfileIfApplicationNameNullTest() {
220 PortalRestResponse<String> expectedportalRestResponse = new PortalRestResponse<String>();
221 expectedportalRestResponse.setMessage("Request has no application name");
222 expectedportalRestResponse.setResponse("delete user profile failed");
223 expectedportalRestResponse.setStatus(PortalRestStatusEnum.ERROR);
224 ExternalSystemUser extSysUser = new ExternalSystemUser();
225 extSysUser.setApplicationName(null);
226 extSysUser.setLoginId("1");
227 extSysUser.setMyloginrequestId("Test");
228 List<ExternalSystemRoleApproval> externalSystemRoleApprovalList = new ArrayList<ExternalSystemRoleApproval>();
229 extSysUser.setRoles(externalSystemRoleApprovalList);
230 PortalRestResponse<String> actualportalRestResponse = rolesApprovalSystemController
231 .deleteUserProfile(mockedRequest, extSysUser, mockedResponse);
233 assertEquals(expectedportalRestResponse, actualportalRestResponse);
237 public void deleteUserProfileIfMyloginrequestIdNullTest() {
238 PortalRestResponse<String> expectedportalRestResponse = new PortalRestResponse<String>();
239 expectedportalRestResponse.setMessage("Request has no request ID");
240 expectedportalRestResponse.setResponse("delete user profile failed");
241 expectedportalRestResponse.setStatus(PortalRestStatusEnum.ERROR);
242 ExternalSystemUser extSysUser = new ExternalSystemUser();
243 extSysUser.setApplicationName("Test");
244 extSysUser.setLoginId("1");
245 extSysUser.setMyloginrequestId(null);
246 List<ExternalSystemRoleApproval> externalSystemRoleApprovalList = new ArrayList<ExternalSystemRoleApproval>();
247 extSysUser.setRoles(externalSystemRoleApprovalList);
248 PortalRestResponse<String> actualportalRestResponse = rolesApprovalSystemController
249 .deleteUserProfile(mockedRequest, extSysUser, mockedResponse);
250 assertEquals(expectedportalRestResponse, actualportalRestResponse);
254 public void deleteUserProfileTest() {
255 PortalRestResponse<String> expectedportalRestResponse = new PortalRestResponse<String>();
256 expectedportalRestResponse.setMessage("Deleted Successfully");
257 expectedportalRestResponse.setResponse("Success");
258 expectedportalRestResponse.setStatus(PortalRestStatusEnum.OK);
259 ExternalSystemUser extSysUser = new ExternalSystemUser();
260 extSysUser.setApplicationName("Test_App");
261 extSysUser.setLoginId("1");
262 extSysUser.setMyloginrequestId("Test");
263 List<ExternalSystemRoleApproval> externalSystemRoleApprovalList = new ArrayList<ExternalSystemRoleApproval>();
264 ExternalSystemRoleApproval externalSystemRoleApproval = new ExternalSystemRoleApproval();
265 externalSystemRoleApprovalList.add(externalSystemRoleApproval);
266 extSysUser.setRoles(externalSystemRoleApprovalList);
267 ExternalRequestFieldsValidator externalRequestFieldsValidator = new ExternalRequestFieldsValidator(true,
270 Mockito.when(userRolesService.setExternalRequestUserAppRole(extSysUser, "DELETE"))
271 .thenReturn(externalRequestFieldsValidator);
272 PortalRestResponse<String> actualportalRestResponse = rolesApprovalSystemController
273 .deleteUserProfile(mockedRequest, extSysUser, mockedResponse);
275 assertEquals(expectedportalRestResponse, actualportalRestResponse);
279 public void deleteUserProfileFailureTest() {
280 PortalRestResponse<String> expectedportalRestResponse = new PortalRestResponse<String>();
281 expectedportalRestResponse.setMessage("failed");
282 expectedportalRestResponse.setResponse("delete user profile failed");
283 expectedportalRestResponse.setStatus(PortalRestStatusEnum.ERROR);
284 ExternalSystemUser extSysUser = new ExternalSystemUser();
285 extSysUser.setApplicationName("Test_App");
286 extSysUser.setLoginId("1");
287 extSysUser.setMyloginrequestId("Test");
288 List<ExternalSystemRoleApproval> externalSystemRoleApprovalList = new ArrayList<ExternalSystemRoleApproval>();
289 ExternalSystemRoleApproval externalSystemRoleApproval = new ExternalSystemRoleApproval();
290 externalSystemRoleApprovalList.add(externalSystemRoleApproval);
291 extSysUser.setRoles(externalSystemRoleApprovalList);
292 ExternalRequestFieldsValidator externalRequestFieldsValidator = new ExternalRequestFieldsValidator(false,
295 Mockito.when(userRolesService.setExternalRequestUserAppRole(extSysUser, "DELETE"))
296 .thenReturn(externalRequestFieldsValidator);
297 PortalRestResponse<String> actualportalRestResponse = rolesApprovalSystemController
298 .deleteUserProfile(mockedRequest, extSysUser, mockedResponse);
300 assertEquals(expectedportalRestResponse, actualportalRestResponse);
304 public void deleteUserProfileExceptionTest() {
305 PortalRestResponse<String> expectedportalRestResponse = new PortalRestResponse<String>();
306 expectedportalRestResponse.setMessage(null);
307 expectedportalRestResponse.setResponse("delete user profile failed");
308 expectedportalRestResponse.setStatus(PortalRestStatusEnum.ERROR);
309 ExternalSystemUser extSysUser = new ExternalSystemUser();
310 extSysUser.setApplicationName("Test_App");
311 extSysUser.setLoginId("1");
312 extSysUser.setMyloginrequestId("Test");
313 List<ExternalSystemRoleApproval> externalSystemRoleApprovalList = new ArrayList<ExternalSystemRoleApproval>();
314 ExternalSystemRoleApproval externalSystemRoleApproval = new ExternalSystemRoleApproval();
315 externalSystemRoleApprovalList.add(externalSystemRoleApproval);
316 extSysUser.setRoles(externalSystemRoleApprovalList);
317 Mockito.when(userRolesService.setExternalRequestUserAppRole(extSysUser, "DELETE")).thenThrow(nullPointerException);
318 PortalRestResponse<String> actualportalRestResponse = rolesApprovalSystemController
319 .deleteUserProfile(mockedRequest, extSysUser, mockedResponse);
321 assertEquals(expectedportalRestResponse, actualportalRestResponse);