Пример #1
0
  /** Union of the permissions granted to: - the user - the groups which user is member - anyone */
  @Test
  public void selectRootComponentPermissions_for_logged_in_user() {
    db.users().insertMember(group1, user);
    ComponentDto project1 = db.components().insertProject();
    db.users().insertProjectPermissionOnAnyone("perm1", project1);
    db.users().insertProjectPermissionOnGroup(group1, "perm2", project1);
    db.users().insertProjectPermissionOnUser(user, "perm3", project1);

    // ignored permissions
    db.users().insertPermissionOnAnyone(org, "ignored");
    db.users().insertPermissionOnGroup(group2, "ignored");
    ComponentDto project2 = db.components().insertProject();

    Set<String> permissions =
        underTest.selectRootComponentPermissions(dbSession, project1.getId(), user.getId());
    assertThat(permissions).containsOnly("perm1", "perm2", "perm3");

    // non granted project
    permissions =
        underTest.selectRootComponentPermissions(dbSession, project2.getId(), user.getId());
    assertThat(permissions).isEmpty();
  }