diff options
author | Teryk Bellahsene <teryk.bellahsene@sonarsource.com> | 2015-08-24 14:38:21 +0200 |
---|---|---|
committer | Teryk Bellahsene <teryk.bellahsene@sonarsource.com> | 2015-08-24 14:38:21 +0200 |
commit | bd80840c368d1f0886c8bfaf7913d09e1fbc4ec3 (patch) | |
tree | a96172dc11f206f7a6c4e7956f72750e55f374ee /server | |
parent | 2bfefbed900d10ee2320630c83f13d21346a1bb8 (diff) | |
download | sonarqube-bd80840c368d1f0886c8bfaf7913d09e1fbc4ec3.tar.gz sonarqube-bd80840c368d1f0886c8bfaf7913d09e1fbc4ec3.zip |
SONAR-6479 WS permissions/users display email in response
Diffstat (limited to 'server')
4 files changed, 14 insertions, 7 deletions
diff --git a/server/sonar-server/src/main/java/org/sonar/server/permission/ws/UsersAction.java b/server/sonar-server/src/main/java/org/sonar/server/permission/ws/UsersAction.java index 0931ab9b32d..fef9128c304 100644 --- a/server/sonar-server/src/main/java/org/sonar/server/permission/ws/UsersAction.java +++ b/server/sonar-server/src/main/java/org/sonar/server/permission/ws/UsersAction.java @@ -40,6 +40,7 @@ import org.sonarqube.ws.Common; import org.sonarqube.ws.Permissions.UsersResponse; import static com.google.common.base.Objects.firstNonNull; +import static com.google.common.base.Strings.nullToEmpty; import static org.sonar.server.permission.PermissionPrivilegeChecker.checkProjectAdminUserByComponentDto; import static org.sonar.server.permission.PermissionQueryParser.toMembership; import static org.sonar.server.permission.ws.Parameters.createPermissionParameter; @@ -110,7 +111,8 @@ public class UsersAction implements PermissionsWsAction { user .clear() .setLogin(userWithPermission.login()) - .setName(userWithPermission.name()) + .setName(nullToEmpty(userWithPermission.name())) + .setEmail(nullToEmpty(userWithPermission.email())) .setSelected(userWithPermission.hasPermission())); userResponse.setPaging( paging diff --git a/server/sonar-server/src/main/resources/org/sonar/server/permission/ws/users-example.json b/server/sonar-server/src/main/resources/org/sonar/server/permission/ws/users-example.json index c8aaccb45a0..5f13cd53286 100644 --- a/server/sonar-server/src/main/resources/org/sonar/server/permission/ws/users-example.json +++ b/server/sonar-server/src/main/resources/org/sonar/server/permission/ws/users-example.json @@ -3,11 +3,13 @@ { "login": "admin", "name": "Administrator", + "email": "admin@admin.com", "selected": true }, { "login": "george.orwell", "name": "George Orwell", + "email": "george.orwell@1984.net", "selected": true } ], diff --git a/server/sonar-server/src/test/java/org/sonar/server/permission/ws/UsersActionTest.java b/server/sonar-server/src/test/java/org/sonar/server/permission/ws/UsersActionTest.java index dc496247c02..56c67958415 100644 --- a/server/sonar-server/src/test/java/org/sonar/server/permission/ws/UsersActionTest.java +++ b/server/sonar-server/src/test/java/org/sonar/server/permission/ws/UsersActionTest.java @@ -49,6 +49,7 @@ import static org.sonar.api.web.UserRole.ISSUE_ADMIN; import static org.sonar.core.permission.GlobalPermissions.SCAN_EXECUTION; import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN; import static org.sonar.db.component.ComponentTesting.newProjectDto; +import static org.sonar.db.user.UserTesting.newUserDto; import static org.sonar.server.permission.ws.Parameters.PARAM_PERMISSION; import static org.sonar.server.permission.ws.Parameters.PARAM_PROJECT_KEY; import static org.sonar.server.permission.ws.Parameters.PARAM_PROJECT_UUID; @@ -78,9 +79,9 @@ public class UsersActionTest { userSession.login("login").setGlobalPermissions(SYSTEM_ADMIN); - UserDto user1 = insertUser(new UserDto().setLogin("login-1").setName("name-1")); - UserDto user2 = insertUser(new UserDto().setLogin("login-2").setName("name-2")); - UserDto user3 = insertUser(new UserDto().setLogin("login-3").setName("name-3")); + UserDto user1 = insertUser(new UserDto().setLogin("login-1").setName("name-1").setEmail("email-1")); + UserDto user2 = insertUser(new UserDto().setLogin("login-2").setName("name-2").setEmail("email-2")); + UserDto user3 = insertUser(new UserDto().setLogin("login-3").setName("name-3").setEmail("email-3")); insertUserRole(new UserRoleDto().setRole(SCAN_EXECUTION).setUserId(user1.getId())); insertUserRole(new UserRoleDto().setRole(SCAN_EXECUTION).setUserId(user2.getId())); insertUserRole(new UserRoleDto().setRole(SYSTEM_ADMIN).setUserId(user3.getId())); @@ -90,8 +91,8 @@ public class UsersActionTest { @Test public void search_for_users_with_response_example() { db.truncateTables(); - UserDto user1 = insertUser(new UserDto().setLogin("admin").setName("Administrator")); - UserDto user2 = insertUser(new UserDto().setLogin("george.orwell").setName("George Orwell")); + UserDto user1 = insertUser(new UserDto().setLogin("admin").setName("Administrator").setEmail("admin@admin.com")); + UserDto user2 = insertUser(new UserDto().setLogin("george.orwell").setName("George Orwell").setEmail("george.orwell@1984.net")); insertUserRole(new UserRoleDto().setRole(SCAN_EXECUTION).setUserId(user1.getId())); insertUserRole(new UserRoleDto().setRole(SCAN_EXECUTION).setUserId(user2.getId())); commit(); @@ -112,7 +113,7 @@ public class UsersActionTest { public void search_for_users_with_permission_on_project() { dbClient.componentDao().insert(dbSession, newProjectDto("project-uuid").setKey("project-key")); ComponentDto project = dbClient.componentDao().selectOrFailByUuid(dbSession, "project-uuid"); - UserDto user = insertUser(new UserDto().setLogin("project-user-login").setName("project-user-name")); + UserDto user = insertUser(newUserDto().setLogin("project-user-login").setName("project-user-name")); insertUserRole(new UserRoleDto().setRole(ISSUE_ADMIN).setUserId(user.getId()).setResourceId(project.getId())); commit(); userSession.login().addProjectUuidPermissions(SYSTEM_ADMIN, "project-uuid"); diff --git a/server/sonar-server/src/test/resources/org/sonar/server/permission/ws/UsersActionTest/users.json b/server/sonar-server/src/test/resources/org/sonar/server/permission/ws/UsersActionTest/users.json index 6be0c984be2..364dff3cf5a 100644 --- a/server/sonar-server/src/test/resources/org/sonar/server/permission/ws/UsersActionTest/users.json +++ b/server/sonar-server/src/test/resources/org/sonar/server/permission/ws/UsersActionTest/users.json @@ -3,11 +3,13 @@ { "login": "login-1", "name": "name-1", + "email": "email-1", "selected": true }, { "login": "login-2", "name": "name-2", + "email": "email-2", "selected": true } ], |