X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=ecomp-portal-BE-common%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fportalapp%2Fportal%2Fservice%2FUserServiceImplTest.java;h=20bc8b4d1c42bcafee9328212a6c9081de045d87;hb=aa9b320ff93511280cf51b03d38fb9254af6b530;hp=e2cc3225dc81ee02f6799329e9be02c68c92c0c8;hpb=fe3a67c11b65d7989a6ef648c3f34eee8abe7394;p=portal.git diff --git a/ecomp-portal-BE-common/src/test/java/org/onap/portalapp/portal/service/UserServiceImplTest.java b/ecomp-portal-BE-common/src/test/java/org/onap/portalapp/portal/service/UserServiceImplTest.java index e2cc3225..20bc8b4d 100644 --- a/ecomp-portal-BE-common/src/test/java/org/onap/portalapp/portal/service/UserServiceImplTest.java +++ b/ecomp-portal-BE-common/src/test/java/org/onap/portalapp/portal/service/UserServiceImplTest.java @@ -2,7 +2,7 @@ * ============LICENSE_START========================================== * ONAP Portal * =================================================================== - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved. * =================================================================== * * Unless otherwise specified, all software contained herein is licensed @@ -38,143 +38,215 @@ package org.onap.portalapp.portal.service; import static org.junit.Assert.assertEquals; +import static org.mockito.Mockito.*; import java.io.ByteArrayInputStream; +import java.io.IOException; +import java.io.UnsupportedEncodingException; import java.net.HttpURLConnection; import java.util.ArrayList; +import java.util.Date; import java.util.List; import org.hibernate.criterion.Criterion; import org.hibernate.criterion.Restrictions; import org.json.simple.JSONObject; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; -import org.onap.portalapp.portal.core.MockEPUser; -import org.onap.portalapp.portal.domain.EPApp; import org.onap.portalapp.portal.domain.EPUser; import org.onap.portalapp.portal.utils.EPCommonSystemProperties; -import org.onap.portalapp.portal.utils.EcompPortalUtils; -import org.onap.portalapp.portal.utils.PortalConstants; import org.onap.portalsdk.core.onboarding.util.CipherUtil; import org.onap.portalsdk.core.service.DataAccessService; -import org.onap.portalsdk.core.service.DataAccessServiceImpl; import org.onap.portalsdk.core.util.SystemProperties; import org.powermock.api.mockito.PowerMockito; import org.powermock.core.classloader.annotations.PrepareForTest; import org.powermock.modules.junit4.PowerMockRunner; @RunWith(PowerMockRunner.class) -@PrepareForTest({ EcompPortalUtils.class, SystemProperties.class, PortalConstants.class, - EPCommonSystemProperties.class, Criterion.class, CipherUtil.class, Restrictions.class }) -@Ignore +@PrepareForTest({ SystemProperties.class, EPCommonSystemProperties.class, CipherUtil.class }) public class UserServiceImplTest { - @Mock - DataAccessService dataAccessService = new DataAccessServiceImpl(); - + private static final String TEST = "test"; + @InjectMocks - UserServiceImpl userServiceImpl= new UserServiceImpl(); - + UserServiceImpl userServiceImpl = new UserServiceImpl(); + + @Mock + DataAccessService dataAccessService; + + @Mock + HttpURLConnection con; + @Before public void setup() { MockitoAnnotations.initMocks(this); } - - public EPApp mockApp() { - EPApp app = new EPApp(); - app.setName("Test"); - app.setImageUrl("test"); - app.setNameSpace("com.test.app"); - app.setCentralAuth(true); - app.setDescription("test"); - app.setNotes("test"); - app.setUrl("test"); - app.setId((long) 10); - app.setAppRestEndpoint("test"); - app.setAlternateUrl("test"); - app.setName("test"); - app.setMlAppName("test"); - app.setMlAppAdminId("test"); - app.setUsername("test"); - app.setAppPassword("test"); - app.setOpen(false); - app.setEnabled(true); - app.setUebKey("test"); - app.setUebSecret("test"); - app.setUebTopicName("test"); - app.setAppType(1); - return app; - } - - MockEPUser mockUser = new MockEPUser(); - - @SuppressWarnings("unchecked") + @Test - public void getUserByUserIdExceptionTest() throws Exception { + public void getUserByUserIdTest() throws UnsupportedEncodingException, IOException { + PowerMockito.mockStatic(SystemProperties.class); - EPUser user = mockUser.mockEPUser(); + EPUser user = buildEpUser(); Mockito.when(SystemProperties.getProperty(SystemProperties.AUTHENTICATION_MECHANISM)).thenReturn("OIDC"); - Mockito.when(EPCommonSystemProperties.getProperty(EPCommonSystemProperties.AUTH_USER_SERVER)).thenReturn("http://www.test.com"); + Mockito.when(EPCommonSystemProperties.getProperty(EPCommonSystemProperties.AUTH_USER_SERVER)) + .thenReturn("http://www.test.com"); HttpURLConnection connection = Mockito.mock(HttpURLConnection.class); + JSONObject response = new JSONObject(); JSONObject userJson = new JSONObject(); userJson.put("id", 1); userJson.put("givenName", "Guest"); - userJson.put("familyName", "Test"); + userJson.put("familyName", TEST); userJson.put("email", "test@123.com"); - List userListJson = new ArrayList<>(); + List userListJson = new ArrayList<>(); userListJson.add(userJson); response.put("response", userListJson); ByteArrayInputStream getBody = new ByteArrayInputStream(response.toString().getBytes("UTF-8")); PowerMockito.when(connection.getInputStream()).thenReturn(getBody); userServiceImpl.getUserByUserId(user.getOrgUserId()); } - - @SuppressWarnings("unchecked") + + @Test + public void testGetUserByNameInvalidODC() throws Exception { + + PowerMockito.mockStatic(SystemProperties.class); + Mockito.when(SystemProperties.getProperty(SystemProperties.AUTHENTICATION_MECHANISM)).thenReturn(TEST); + List list = new ArrayList<>(); + StringBuffer criteria = new StringBuffer(); + String firstName = TEST; + String lastName = TEST; + if (firstName != null) + criteria.append(" where first_name = '").append(firstName).append("'"); + if (lastName != null) + criteria.append(" where last_name = '").append(lastName).append("'"); + when(dataAccessService.getList(EPUser.class, criteria.toString(), null, null)).thenReturn(list); + userServiceImpl.getUserByFirstLastName(TEST, TEST); + + } + + @Test + public void testGetUserByName() throws Exception { + + PowerMockito.mockStatic(SystemProperties.class); + EPUser user = buildEpUser(); + Mockito.when(SystemProperties.getProperty(SystemProperties.AUTHENTICATION_MECHANISM)).thenReturn("OIDC"); + Mockito.when(EPCommonSystemProperties.getProperty(EPCommonSystemProperties.AUTH_USER_SERVER)) + .thenReturn("http://www.test.com"); + //HttpURLConnection connection = Mockito.mock(HttpURLConnection.class); + JSONObject response = new JSONObject(); + JSONObject userJson = new JSONObject(); + userJson.put("id", 1); + userJson.put("givenName", "Guest"); + userJson.put("familyName", TEST); + userJson.put("email", "test@123.com"); + List userListJson = new ArrayList<>(); + userListJson.add(userJson); + response.put("response", userListJson); + //ByteArrayInputStream getBody = new ByteArrayInputStream(response.toString().getBytes("UTF-8")); + //PowerMockito.when(connection.getInputStream()).thenReturn(getBody); + userServiceImpl.getUserByFirstLastName(TEST, TEST); + + } + @Test public void saveNewUserTest() throws Exception { - PowerMockito.mockStatic(Restrictions.class); + PowerMockito.mockStatic(Criterion.class); PowerMockito.mockStatic(CipherUtil.class); - EPUser user = mockUser.mockEPUser(); - List users = new ArrayList<>(); + EPUser user = buildEpUser(); + List users = new ArrayList<>(); + users.add(user); Mockito.when(CipherUtil.encryptPKC(user.getLoginPwd())).thenReturn("xyz"); List restrictionsList = new ArrayList(); - Criterion orgUserIdCriterion = Restrictions.eq("orgUserId",user.getLoginId()); + Criterion orgUserIdCriterion = Restrictions.eq("orgUserId", user.getLoginId()); restrictionsList.add(orgUserIdCriterion); - Mockito.when((List) dataAccessService.getList(EPUser.class, null, restrictionsList, null)).thenReturn(users); + + when( dataAccessService.getList(EPUser.class, null, restrictionsList, null)).thenReturn(users); String actual = userServiceImpl.saveNewUser(user, "No"); assertEquals("success", actual); + } - - @SuppressWarnings("unchecked") + @Test - public void saveExistingUserTest() throws Exception { + public void saveNewUserEmptyTest() throws Exception { PowerMockito.mockStatic(Restrictions.class); PowerMockito.mockStatic(Criterion.class); PowerMockito.mockStatic(CipherUtil.class); - EPUser user = mockUser.mockEPUser(); - user.setLoginPwd("xyz"); - List users = new ArrayList<>(); - users.add(user); - EPUser oldUser = mockUser.mockEPUser(); - oldUser.setLoginPwd("abc"); - List oldUsers = new ArrayList<>(); - oldUsers.add(oldUser); + EPUser user = buildEpUser(); + List users = new ArrayList<>(); Mockito.when(CipherUtil.encryptPKC(user.getLoginPwd())).thenReturn("xyz"); List restrictionsList = new ArrayList(); - Criterion orgUserIdCriterion = Restrictions.eq("orgUserId",user.getLoginId()); + Criterion orgUserIdCriterion = Restrictions.eq("orgUserId", user.getLoginId()); restrictionsList.add(orgUserIdCriterion); - Mockito.when((List) dataAccessService.getList(EPUser.class, null, restrictionsList, null)).thenReturn(oldUsers); + StringBuffer criteria = new StringBuffer(); + criteria.append(" where org_user_id = '").append(user.getLoginId()).append("'"); + Mockito.when(dataAccessService.getList(EPUser.class, criteria.toString(), null, null)).thenReturn(users); String actual = userServiceImpl.saveNewUser(user, "No"); assertEquals("success", actual); - } + } + @Test + public void saveUser()throws Exception { + + EPUser user = buildEpUser(); + userServiceImpl.saveUser(user); + + } + + EPUser buildEpUser() { + EPUser epUser = new EPUser(); + + epUser.setId((long) 1); + epUser.setManagerId((long) 1234); + epUser.setFirstName(TEST); + epUser.setLastName(TEST); + epUser.setMiddleInitial(TEST); + epUser.setPhone(TEST); + epUser.setFax(TEST); + epUser.setCellular(TEST); + epUser.setEmail(TEST); + epUser.setAddressId((long) 123); + epUser.setAlertMethodCd(TEST); + epUser.setHrid(TEST); + epUser.setOrgUserId(TEST); + epUser.setOrgCode(TEST); + epUser.setAddress1(TEST); + epUser.setAddress2(TEST); + epUser.setCity(TEST); + epUser.setState(TEST); + epUser.setZipCode(TEST); + epUser.setCountry(TEST); + epUser.setOrgManagerUserId(TEST); + epUser.setLocationClli(TEST); + epUser.setBusinessCountryCode(TEST); + epUser.setBusinessCountryName(TEST); + epUser.setBusinessUnit(TEST); + epUser.setBusinessUnitName(TEST); + epUser.setDepartment(TEST); + epUser.setDepartmentName(TEST); + epUser.setCompanyCode(TEST); + epUser.setCompany(TEST); + epUser.setZipCodeSuffix(TEST); + epUser.setJobTitle(TEST); + epUser.setCommandChain(TEST); + epUser.setSiloStatus(TEST); + epUser.setCostCenter(TEST); + epUser.setFinancialLocCode(TEST); + epUser.setLoginId(TEST); + epUser.setLoginPwd(TEST); + epUser.setLastLoginDate(new Date()); + epUser.setActive(false); + epUser.setInternal(false); + epUser.setSelectedProfileId((long) 12345); + epUser.setTimeZoneId((long) 12345); + epUser.setOnline(false); + epUser.setChatId(TEST); + return epUser; + } }