1 package org.openecomp.portalapp.portal.test.service;
3 import static org.junit.Assert.*;
5 import java.util.ArrayList;
6 import java.util.HashMap;
7 import java.util.HashSet;
9 import java.util.SortedSet;
10 import java.util.TreeSet;
12 import javax.servlet.http.HttpServletRequest;
13 import javax.servlet.http.HttpSession;
15 import org.junit.Before;
16 import org.junit.Test;
17 import org.junit.runner.RunWith;
18 import org.mockito.InjectMocks;
19 import org.mockito.Mock;
20 import org.mockito.Mockito;
21 import org.mockito.MockitoAnnotations;
22 import org.openecomp.portalapp.portal.domain.EPRole;
23 import org.openecomp.portalapp.portal.domain.EPUser;
24 import org.openecomp.portalapp.portal.service.EPRoleFunctionServiceImpl;
25 import org.openecomp.portalapp.portal.test.core.MockEPUser;
26 import org.openecomp.portalapp.test.framework.MockitoTestSuite;
27 import org.openecomp.portalapp.util.EPUserUtils;
28 import org.openecomp.portalsdk.core.domain.RoleFunction;
29 import org.openecomp.portalsdk.core.service.DataAccessService;
30 import org.openecomp.portalsdk.core.util.SystemProperties;
31 import org.powermock.api.mockito.PowerMockito;
32 import org.powermock.core.classloader.annotations.PrepareForTest;
33 import org.powermock.modules.junit4.PowerMockRunner;
35 @RunWith(PowerMockRunner.class)
36 @PrepareForTest({ SystemProperties.class, EPUserUtils.class })
37 public class EPRoleFunctionServiceImplTest {
40 DataAccessService dataAccessService;
43 EPRoleFunctionServiceImpl ePRoleFunctionServiceImpl = new EPRoleFunctionServiceImpl();
47 MockitoAnnotations.initMocks(this);
50 NullPointerException nullPointerException = new NullPointerException();
51 MockitoTestSuite mockitoTestSuite = new MockitoTestSuite();
52 MockEPUser mockUser = new MockEPUser();
54 HttpServletRequest mockedRequest = mockitoTestSuite.getMockedRequest();
57 public void getRoleFunctionsTest() {
58 List<RoleFunction> functions = new ArrayList<>();
59 Mockito.when(dataAccessService.getList(RoleFunction.class, null)).thenReturn(functions);
60 List<RoleFunction> expectedFunctions = ePRoleFunctionServiceImpl.getRoleFunctions();
61 assertEquals(expectedFunctions, functions);
65 public void getRoleFunctionsRequestTest() {
66 EPUser user = mockUser.mockEPUser();
67 HashSet roleFunctions = new HashSet<>();
68 PowerMockito.mockStatic(SystemProperties.class);
69 HttpSession session = mockedRequest.getSession();
70 Mockito.when(session.getAttribute(SystemProperties.getProperty(SystemProperties.ROLE_FUNCTIONS_ATTRIBUTE_NAME)))
71 .thenReturn(roleFunctions);
72 HashSet expectedRoleFunctions = (HashSet) ePRoleFunctionServiceImpl.getRoleFunctions(mockedRequest, user);
73 assertEquals(expectedRoleFunctions, roleFunctions);
76 @SuppressWarnings("unchecked")
78 public void getRoleFunctionsRequestIfNullTest() {
79 EPUser user = mockUser.mockEPUser();
80 HashSet roleFunctions = null;
81 PowerMockito.mockStatic(SystemProperties.class);
82 PowerMockito.mockStatic(EPUserUtils.class);
83 HttpSession session = mockedRequest.getSession();
84 Mockito.when(session.getAttribute(SystemProperties.getProperty(SystemProperties.ROLE_FUNCTIONS_ATTRIBUTE_NAME)))
85 .thenReturn(roleFunctions);
86 HashMap roles = new HashMap<>();
87 EPRole role = new EPRole();
88 SortedSet<RoleFunction> roleFunctionSet = new TreeSet<RoleFunction>();
89 RoleFunction rolefun = new RoleFunction();
90 roleFunctionSet.add(rolefun);
91 role.setRoleFunctions(roleFunctionSet);
92 roles.put((long) 1, role);
93 Mockito.when(EPUserUtils.getRoles(mockedRequest)).thenReturn(roles);
94 HashSet expectedRoleFunctions = (HashSet) ePRoleFunctionServiceImpl.getRoleFunctions(mockedRequest, user);
95 assertTrue(expectedRoleFunctions.size() == 1);