/** * Returns list of groups for a user. * * @param user get groups for this user * @return list of groups for a given user */ @Override public List<String> getGroups(String user) throws IOException { List<String> groups = CommonUtils.getUnixGroups(user); // remove duplicated primary group return new ArrayList<>(new LinkedHashSet<>(groups)); } }
private void setupShellMocks(String username, List<String> groups) throws IOException { PowerMockito.mockStatic(CommonUtils.class); PowerMockito.when(CommonUtils.getUnixGroups(eq(username))).thenReturn(groups); }
/** * Tests the {@link CommonUtils#getUnixGroups(String)} method. */ @Test public void userGroup() throws Throwable { String userName = "alluxio-user1"; String userGroup1 = "alluxio-user1-group1"; String userGroup2 = "alluxio-user1-group2"; List<String> userGroups = new ArrayList<>(); userGroups.add(userGroup1); userGroups.add(userGroup2); setupShellMocks(userName, userGroups); List<String> groups = CommonUtils.getUnixGroups(userName); assertNotNull(groups); assertEquals(groups.size(), 2); assertEquals(groups.get(0), userGroup1); assertEquals(groups.get(1), userGroup2); }
/** * Returns list of groups for a user. * * @param user get groups for this user * @return list of groups for a given user */ @Override public List<String> getGroups(String user) throws IOException { List<String> groups = CommonUtils.getUnixGroups(user); // remove duplicated primary group return new ArrayList<>(new LinkedHashSet<>(groups)); } }