aboutsummaryrefslogtreecommitdiffstats
path: root/server
diff options
context:
space:
mode:
authorTeryk Bellahsene <teryk.bellahsene@sonarsource.com>2015-08-24 14:38:21 +0200
committerTeryk Bellahsene <teryk.bellahsene@sonarsource.com>2015-08-24 14:38:21 +0200
commitbd80840c368d1f0886c8bfaf7913d09e1fbc4ec3 (patch)
treea96172dc11f206f7a6c4e7956f72750e55f374ee /server
parent2bfefbed900d10ee2320630c83f13d21346a1bb8 (diff)
downloadsonarqube-bd80840c368d1f0886c8bfaf7913d09e1fbc4ec3.tar.gz
sonarqube-bd80840c368d1f0886c8bfaf7913d09e1fbc4ec3.zip
SONAR-6479 WS permissions/users display email in response
Diffstat (limited to 'server')
-rw-r--r--server/sonar-server/src/main/java/org/sonar/server/permission/ws/UsersAction.java4
-rw-r--r--server/sonar-server/src/main/resources/org/sonar/server/permission/ws/users-example.json2
-rw-r--r--server/sonar-server/src/test/java/org/sonar/server/permission/ws/UsersActionTest.java13
-rw-r--r--server/sonar-server/src/test/resources/org/sonar/server/permission/ws/UsersActionTest/users.json2
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
}
],