in tests of permissions web servicestags/6.2-RC1
@@ -30,7 +30,6 @@ import org.sonar.server.exceptions.BadRequestException; | |||
import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.exceptions.ServerException; | |||
import org.sonar.server.ws.WsTester; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.api.web.UserRole.ISSUE_ADMIN; | |||
@@ -38,8 +37,6 @@ import static org.sonar.core.permission.GlobalPermissions.PROVISIONING; | |||
import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN; | |||
import static org.sonar.db.component.ComponentTesting.newProjectDto; | |||
import static org.sonar.db.component.ComponentTesting.newView; | |||
import static org.sonar.server.permission.ws.AddGroupAction.ACTION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_NAME; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_ORGANIZATION_KEY; | |||
@@ -191,7 +188,8 @@ public class AddGroupActionTest extends BasePermissionWsTest<AddGroupAction> { | |||
expectedException.expect(ServerException.class); | |||
wsTester.newGetRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setMethod("GET") | |||
.setParam(PARAM_GROUP_NAME, "sonar-administrators") | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
.execute(); | |||
@@ -312,6 +310,7 @@ public class AddGroupActionTest extends BasePermissionWsTest<AddGroupAction> { | |||
assertThat(db.users().selectGroupPermissions(group, project)).containsOnly(ISSUE_ADMIN); | |||
} | |||
@Test | |||
public void set_root_flag_to_true_on_all_users_in_group_when_admin_permission_to_group_of_default_organization_without_org_param() throws Exception { | |||
GroupDto group = db.users().insertGroup(db.getDefaultOrganization()); | |||
@@ -382,7 +381,4 @@ public class AddGroupActionTest extends BasePermissionWsTest<AddGroupAction> { | |||
.execute(); | |||
} | |||
private WsTester.TestRequest newRequest() { | |||
return wsTester.newPostRequest(CONTROLLER, ACTION); | |||
} | |||
} |
@@ -30,7 +30,7 @@ import org.sonar.server.exceptions.BadRequestException; | |||
import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.exceptions.ServerException; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonar.server.ws.TestRequest; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.api.web.UserRole.ISSUE_ADMIN; | |||
@@ -38,8 +38,6 @@ import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN; | |||
import static org.sonar.db.component.ComponentTesting.newFileDto; | |||
import static org.sonar.db.component.ComponentTesting.newProjectDto; | |||
import static org.sonar.db.component.ComponentTesting.newView; | |||
import static org.sonar.server.permission.ws.AddUserAction.ACTION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_ORGANIZATION_KEY; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_ID; | |||
@@ -63,7 +61,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
@Test | |||
public void add_permission_to_user() throws Exception { | |||
loginAsAdminOnDefaultOrganization(); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
.execute(); | |||
@@ -76,7 +74,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
ComponentDto project = db.components().insertProject(); | |||
loginAsAdminOnDefaultOrganization(); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_ID, project.uuid()) | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
@@ -91,7 +89,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
ComponentDto project = db.components().insertProject(); | |||
loginAsAdminOnDefaultOrganization(); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_KEY, project.getKey()) | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
@@ -106,7 +104,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
ComponentDto view = db.components().insertComponent(newView("view-uuid").setKey("view-key")); | |||
loginAsAdminOnDefaultOrganization(); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_ID, view.uuid()) | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
@@ -122,7 +120,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
expectedException.expect(NotFoundException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_ID, "unknown-project-uuid") | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
@@ -135,7 +133,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
expectedException.expect(BadRequestException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PERMISSION, UserRole.ISSUE_ADMIN) | |||
.execute(); | |||
@@ -148,7 +146,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
expectedException.expect(BadRequestException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_ID, "file-uuid") | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
@@ -161,7 +159,8 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
expectedException.expect(ServerException.class); | |||
wsTester.newGetRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setMethod("GET") | |||
.setParam(PARAM_USER_LOGIN, "george.orwell") | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
.execute(); | |||
@@ -173,7 +172,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
expectedException.expect(IllegalArgumentException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
.execute(); | |||
} | |||
@@ -184,7 +183,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
expectedException.expect(NotFoundException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, "jrr.tolkien") | |||
.execute(); | |||
} | |||
@@ -197,7 +196,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
expectedException.expect(BadRequestException.class); | |||
expectedException.expectMessage("Project id or project key can be provided, not both."); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_ID, "project-uuid") | |||
@@ -211,7 +210,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
expectedException.expect(ForbiddenException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
.execute(); | |||
@@ -224,7 +223,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
expectedException.expect(ForbiddenException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
.setParam(PARAM_PROJECT_KEY, project.getKey()) | |||
@@ -240,7 +239,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
userSession.login().addProjectUuidPermissions(UserRole.ADMIN, project.uuid()); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_KEY, project.getKey()) | |||
.setParam(PARAM_PERMISSION, UserRole.ISSUE_ADMIN) | |||
@@ -324,7 +323,7 @@ public class AddUserActionTest extends BasePermissionWsTest<AddUserAction> { | |||
} | |||
private void executeRequest(UserDto userDto, String permission, @Nullable OrganizationDto organizationDto) throws Exception { | |||
WsTester.TestRequest request = wsTester.newPostRequest(CONTROLLER, ACTION) | |||
TestRequest request = newRequest() | |||
.setParam(PARAM_USER_LOGIN, userDto.getLogin()) | |||
.setParam(PARAM_PERMISSION, permission); | |||
if (organizationDto != null) { |
@@ -38,7 +38,8 @@ import org.sonar.server.permission.UserPermissionChanger; | |||
import org.sonar.server.permission.index.PermissionIndexer; | |||
import org.sonar.server.tester.UserSessionRule; | |||
import org.sonar.server.usergroups.ws.GroupWsSupport; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonar.server.ws.TestRequest; | |||
import org.sonar.server.ws.WsActionTester; | |||
import static org.mockito.Mockito.mock; | |||
import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN; | |||
@@ -53,11 +54,11 @@ public abstract class BasePermissionWsTest<A extends PermissionsWsAction> { | |||
private TestDefaultOrganizationProvider defaultOrganizationProvider = TestDefaultOrganizationProvider.from(db); | |||
protected UserSessionRule userSession = UserSessionRule.standalone(); | |||
protected WsTester wsTester; | |||
protected WsActionTester wsTester; | |||
@Before | |||
public void initWsTester() { | |||
wsTester = new WsTester(new PermissionsWs(buildWsAction())); | |||
wsTester = new WsActionTester(buildWsAction()); | |||
} | |||
protected abstract A buildWsAction(); | |||
@@ -82,6 +83,10 @@ public abstract class BasePermissionWsTest<A extends PermissionsWsAction> { | |||
new GroupPermissionChanger(db.getDbClient(), defaultOrganizationProvider)); | |||
} | |||
protected TestRequest newRequest() { | |||
return wsTester.newRequest().setMethod("POST"); | |||
} | |||
protected PermissionTemplateDto insertTemplate() { | |||
PermissionTemplateDto dto = PermissionTemplateTesting.newPermissionTemplateDto() | |||
.setOrganizationUuid(db.getDefaultOrganization().getUuid()); |
@@ -28,7 +28,6 @@ import org.sonar.db.user.GroupDto; | |||
import org.sonar.server.exceptions.BadRequestException; | |||
import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.UnauthorizedException; | |||
import org.sonar.server.ws.WsTester; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.api.server.ws.WebService.Param.PAGE; | |||
@@ -40,7 +39,7 @@ 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.component.ComponentTesting.newView; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonar.test.JsonAssert.assertJson; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_KEY; | |||
@@ -75,10 +74,12 @@ public class GroupsActionTest extends BasePermissionWsTest<GroupsAction> { | |||
@Test | |||
public void search_for_groups_with_one_permission() throws Exception { | |||
loginAsAdminOnDefaultOrganization(); | |||
newRequest() | |||
String json = newRequest() | |||
.setParam(PARAM_PERMISSION, SCAN_EXECUTION) | |||
.execute() | |||
.assertJson("{\n" + | |||
.getInput(); | |||
assertJson(json).isSimilarTo("{\n" + | |||
" \"paging\": {\n" + | |||
" \"pageIndex\": 1,\n" + | |||
" \"pageSize\": 20,\n" + | |||
@@ -115,7 +116,7 @@ public class GroupsActionTest extends BasePermissionWsTest<GroupsAction> { | |||
String result = newRequest() | |||
.setParam(PARAM_PERMISSION, SCAN_EXECUTION) | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result).containsSequence(DefaultGroups.ANYONE, "group-1", "group-2"); | |||
} | |||
@@ -128,7 +129,7 @@ public class GroupsActionTest extends BasePermissionWsTest<GroupsAction> { | |||
.setParam(PAGE_SIZE, "1") | |||
.setParam(PAGE, "3") | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result).contains("group-2") | |||
.doesNotContain("group-1") | |||
@@ -142,7 +143,7 @@ public class GroupsActionTest extends BasePermissionWsTest<GroupsAction> { | |||
.setParam(PARAM_PERMISSION, SCAN_EXECUTION) | |||
.setParam(TEXT_QUERY, "group-") | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result) | |||
.contains("group-1", "group-2") | |||
@@ -166,7 +167,7 @@ public class GroupsActionTest extends BasePermissionWsTest<GroupsAction> { | |||
.setParam(PARAM_PERMISSION, ISSUE_ADMIN) | |||
.setParam(PARAM_PROJECT_ID, "project-uuid") | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result).contains(group.getName()) | |||
.doesNotContain(anotherGroup.getName()) | |||
@@ -188,7 +189,7 @@ public class GroupsActionTest extends BasePermissionWsTest<GroupsAction> { | |||
.setParam(PARAM_PROJECT_ID, "project-uuid") | |||
.setParam(TEXT_QUERY, "group-with") | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result).contains(group.getName()) | |||
.doesNotContain(groupWithoutPermission.getName()) | |||
@@ -208,7 +209,7 @@ public class GroupsActionTest extends BasePermissionWsTest<GroupsAction> { | |||
.setParam(PARAM_PERMISSION, ISSUE_ADMIN) | |||
.setParam(PARAM_PROJECT_ID, project.uuid()) | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result).contains(group.getName()) | |||
.doesNotContain(groupWithoutPermission.getName()); | |||
@@ -225,7 +226,7 @@ public class GroupsActionTest extends BasePermissionWsTest<GroupsAction> { | |||
.setParam(PARAM_PROJECT_ID, project.uuid()) | |||
.setParam(TEXT_QUERY, "nyo") | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result).contains("Anyone"); | |||
} | |||
@@ -241,7 +242,7 @@ public class GroupsActionTest extends BasePermissionWsTest<GroupsAction> { | |||
.setParam(PARAM_PERMISSION, ISSUE_ADMIN) | |||
.setParam(PARAM_PROJECT_ID, "view-uuid") | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result).contains("project-group-name") | |||
.doesNotContain("group-1") | |||
@@ -283,7 +284,4 @@ public class GroupsActionTest extends BasePermissionWsTest<GroupsAction> { | |||
.execute(); | |||
} | |||
private WsTester.TestRequest newRequest() { | |||
return wsTester.newPostRequest(CONTROLLER, "groups"); | |||
} | |||
} |
@@ -29,8 +29,6 @@ import org.sonar.db.user.UserDto; | |||
import org.sonar.server.exceptions.BadRequestException; | |||
import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.exceptions.ServerException; | |||
import org.sonar.server.ws.WsTester; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.api.web.UserRole.ADMIN; | |||
@@ -41,8 +39,6 @@ import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN; | |||
import static org.sonar.db.component.ComponentTesting.newFileDto; | |||
import static org.sonar.db.component.ComponentTesting.newProjectDto; | |||
import static org.sonar.db.component.ComponentTesting.newView; | |||
import static org.sonar.server.permission.ws.RemoveGroupAction.ACTION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_NAME; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_ORGANIZATION_KEY; | |||
@@ -197,19 +193,6 @@ public class RemoveGroupActionTest extends BasePermissionWsTest<RemoveGroupActio | |||
.execute(); | |||
} | |||
@Test | |||
public void fail_when_get_request() throws Exception { | |||
loginAsAdminOnDefaultOrganization(); | |||
expectedException.expect(ServerException.class); | |||
expectedException.expectMessage("HTTP method POST is required"); | |||
wsTester.newGetRequest(CONTROLLER, ACTION) | |||
.setParam(PARAM_GROUP_NAME, aGroup.getName()) | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
.execute(); | |||
} | |||
@Test | |||
public void fail_when_group_name_is_missing() throws Exception { | |||
loginAsAdminOnDefaultOrganization(); | |||
@@ -373,8 +356,4 @@ public class RemoveGroupActionTest extends BasePermissionWsTest<RemoveGroupActio | |||
assertThat(db.users().selectGroupPermissions(aGroup, project)).containsOnly(CODEVIEWER); | |||
} | |||
private WsTester.TestRequest newRequest() { | |||
return wsTester.newPostRequest(CONTROLLER, ACTION); | |||
} | |||
} |
@@ -40,8 +40,6 @@ import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN; | |||
import static org.sonar.db.component.ComponentTesting.newFileDto; | |||
import static org.sonar.db.component.ComponentTesting.newProjectDto; | |||
import static org.sonar.db.component.ComponentTesting.newView; | |||
import static org.sonar.server.permission.ws.RemoveUserAction.ACTION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_ORGANIZATION_KEY; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_ID; | |||
@@ -72,7 +70,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
db.users().insertPermissionOnUser(user, QUALITY_GATE_ADMIN); | |||
loginAsAdminOnDefaultOrganization(); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PERMISSION, QUALITY_GATE_ADMIN) | |||
.execute(); | |||
@@ -89,7 +87,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
expectedException.expect(BadRequestException.class); | |||
expectedException.expectMessage("Last user with permission 'admin'. Permission cannot be removed."); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PERMISSION, ADMIN) | |||
.execute(); | |||
@@ -102,7 +100,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
db.users().insertProjectPermissionOnUser(user, ISSUE_ADMIN, project); | |||
loginAsAdminOnDefaultOrganization(); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_ID, project.uuid()) | |||
.setParam(PARAM_PERMISSION, CODEVIEWER) | |||
@@ -118,7 +116,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
db.users().insertProjectPermissionOnUser(user, CODEVIEWER, project); | |||
loginAsAdminOnDefaultOrganization(); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_KEY, project.getKey()) | |||
.setParam(PARAM_PERMISSION, ISSUE_ADMIN) | |||
@@ -134,7 +132,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
db.users().insertProjectPermissionOnUser(user, CODEVIEWER, view); | |||
loginAsAdminOnDefaultOrganization(); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_KEY, view.getKey()) | |||
.setParam(PARAM_PERMISSION, ISSUE_ADMIN) | |||
@@ -149,7 +147,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
expectedException.expect(NotFoundException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_ID, "unknown-project-uuid") | |||
.setParam(PARAM_PERMISSION, ISSUE_ADMIN) | |||
@@ -162,7 +160,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
expectedException.expect(BadRequestException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PERMISSION, ISSUE_ADMIN) | |||
.execute(); | |||
@@ -175,7 +173,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
expectedException.expect(BadRequestException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_ID, "file-uuid") | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
@@ -188,7 +186,8 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
expectedException.expect(ServerException.class); | |||
wsTester.newGetRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setMethod("GET") | |||
.setParam(PARAM_USER_LOGIN, "george.orwell") | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
.execute(); | |||
@@ -200,7 +199,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
expectedException.expect(IllegalArgumentException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
.execute(); | |||
} | |||
@@ -211,7 +210,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
expectedException.expect(IllegalArgumentException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.execute(); | |||
} | |||
@@ -224,7 +223,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
expectedException.expect(BadRequestException.class); | |||
expectedException.expectMessage("Project id or project key can be provided, not both."); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_PERMISSION, SYSTEM_ADMIN) | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_ID, project.uuid()) | |||
@@ -273,7 +272,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
} | |||
private void executeRequest(UserDto userDto, OrganizationDto organizationDto, String permission) throws Exception { | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, userDto.getLogin()) | |||
.setParam(PARAM_PERMISSION, permission) | |||
.setParam(PARAM_ORGANIZATION_KEY, organizationDto.getKey()) | |||
@@ -281,7 +280,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
} | |||
private void executeRequest(UserDto userDto, String permission) throws Exception { | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, userDto.getLogin()) | |||
.setParam(PARAM_PERMISSION, permission) | |||
.execute(); | |||
@@ -293,7 +292,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
expectedException.expect(ForbiddenException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PERMISSION, PROVISIONING) | |||
.execute(); | |||
@@ -306,7 +305,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
expectedException.expect(ForbiddenException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PERMISSION, ISSUE_ADMIN) | |||
.setParam(PARAM_PROJECT_KEY, project.key()) | |||
@@ -323,7 +322,7 @@ public class RemoveUserActionTest extends BasePermissionWsTest<RemoveUserAction> | |||
db.users().insertProjectPermissionOnUser(user, ISSUE_ADMIN, project); | |||
userSession.login().addProjectUuidPermissions(UserRole.ADMIN, project.uuid()); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PROJECT_ID, project.uuid()) | |||
.setParam(PARAM_PERMISSION, ISSUE_ADMIN) |
@@ -41,9 +41,7 @@ import static org.sonar.core.permission.GlobalPermissions.QUALITY_PROFILE_ADMIN; | |||
import static org.sonar.core.permission.GlobalPermissions.SCAN_EXECUTION; | |||
import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN; | |||
import static org.sonar.db.organization.OrganizationTesting.newOrganizationDto; | |||
import static org.sonar.server.permission.ws.SearchGlobalPermissionsAction.ACTION; | |||
import static org.sonar.test.JsonAssert.assertJson; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
public class SearchGlobalPermissionsActionTest extends BasePermissionWsTest<SearchGlobalPermissionsAction> { | |||
@@ -80,10 +78,10 @@ public class SearchGlobalPermissionsActionTest extends BasePermissionWsTest<Sear | |||
// to be excluded, permission on another organization (the default one) | |||
db.users().insertPermissionOnUser(db.getDefaultOrganization(), adminUser, QUALITY_GATE_ADMIN); | |||
String result = wsTester.newPostRequest(CONTROLLER, ACTION) | |||
String result = newRequest() | |||
.setParam("organization", org.getKey()) | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertJson(result).isSimilarTo(getClass().getResource("search_global_permissions-example.json")); | |||
} | |||
@@ -100,10 +98,10 @@ public class SearchGlobalPermissionsActionTest extends BasePermissionWsTest<Sear | |||
db.users().insertPermissionOnUser(org, user, QUALITY_GATE_ADMIN); | |||
WsPermissions.WsSearchGlobalPermissionsResponse result = WsPermissions.WsSearchGlobalPermissionsResponse.parseFrom( | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setMediaType(MediaTypes.PROTOBUF) | |||
.execute() | |||
.output()); | |||
.getInputStream()); | |||
assertThat(result.getPermissionsCount()).isEqualTo(GlobalPermissions.ALL.size()); | |||
for (WsPermissions.Permission permission : result.getPermissionsList()) { | |||
@@ -120,10 +118,10 @@ public class SearchGlobalPermissionsActionTest extends BasePermissionWsTest<Sear | |||
loginAsAdminOnDefaultOrganization(); | |||
WsPermissions.WsSearchGlobalPermissionsResponse result = WsPermissions.WsSearchGlobalPermissionsResponse.parseFrom( | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setMediaType(MediaTypes.PROTOBUF) | |||
.execute() | |||
.output()); | |||
.getInputStream()); | |||
assertThat(result).isNotNull(); | |||
} | |||
@@ -134,7 +132,7 @@ public class SearchGlobalPermissionsActionTest extends BasePermissionWsTest<Sear | |||
expectedException.expect(ForbiddenException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.execute(); | |||
} | |||
@@ -145,7 +143,7 @@ public class SearchGlobalPermissionsActionTest extends BasePermissionWsTest<Sear | |||
expectedException.expect(ForbiddenException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam("organization", org.getKey()) | |||
.execute(); | |||
} | |||
@@ -156,14 +154,14 @@ public class SearchGlobalPermissionsActionTest extends BasePermissionWsTest<Sear | |||
expectedException.expect(UnauthorizedException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION).execute(); | |||
newRequest().execute(); | |||
} | |||
@Test | |||
public void fail_if_organization_does_not_exist() throws Exception { | |||
expectedException.expect(NotFoundException.class); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam("organization", "does_not_exist") | |||
.execute(); | |||
} |
@@ -19,6 +19,7 @@ | |||
*/ | |||
package org.sonar.server.permission.ws; | |||
import java.io.InputStream; | |||
import org.junit.Before; | |||
import org.junit.Test; | |||
import org.sonar.api.resources.Qualifiers; | |||
@@ -32,7 +33,6 @@ import org.sonar.db.user.UserDto; | |||
import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.UnauthorizedException; | |||
import org.sonar.server.i18n.I18nRule; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonarqube.ws.MediaTypes; | |||
import org.sonarqube.ws.WsPermissions; | |||
@@ -46,7 +46,6 @@ import static org.sonar.db.component.ComponentTesting.newProjectDto; | |||
import static org.sonar.db.component.ComponentTesting.newView; | |||
import static org.sonar.db.user.GroupTesting.newGroupDto; | |||
import static org.sonar.test.JsonAssert.assertJson; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_QUALIFIER; | |||
@@ -105,7 +104,7 @@ public class SearchProjectPermissionsActionTest extends BasePermissionWsTest<Sea | |||
db.commit(); | |||
String result = newRequest().execute().outputAsString(); | |||
String result = newRequest().execute().getInput(); | |||
assertJson(result) | |||
.ignoreFields("permissions") | |||
@@ -114,7 +113,7 @@ public class SearchProjectPermissionsActionTest extends BasePermissionWsTest<Sea | |||
@Test | |||
public void empty_result() throws Exception { | |||
String result = newRequest().execute().outputAsString(); | |||
String result = newRequest().execute().getInput(); | |||
assertJson(result) | |||
.ignoreFields("permissions") | |||
@@ -128,7 +127,7 @@ public class SearchProjectPermissionsActionTest extends BasePermissionWsTest<Sea | |||
String result = newRequest() | |||
.setParam(PARAM_PROJECT_ID, "project-uuid") | |||
.execute().outputAsString(); | |||
.execute().getInput(); | |||
assertThat(result).contains("project-uuid"); | |||
} | |||
@@ -143,7 +142,7 @@ public class SearchProjectPermissionsActionTest extends BasePermissionWsTest<Sea | |||
String result = newRequest() | |||
.setParam(PAGE, "1") | |||
.setParam(PAGE_SIZE, "3") | |||
.execute().outputAsString(); | |||
.execute().getInput(); | |||
assertThat(result) | |||
.contains("project-name-1", "project-name-2", "project-name-3") | |||
@@ -158,7 +157,7 @@ public class SearchProjectPermissionsActionTest extends BasePermissionWsTest<Sea | |||
String result = newRequest() | |||
.setParam(TEXT_QUERY, "project") | |||
.execute().outputAsString(); | |||
.execute().getInput(); | |||
assertThat(result).contains("project-name") | |||
.doesNotContain("another-name"); | |||
@@ -173,7 +172,7 @@ public class SearchProjectPermissionsActionTest extends BasePermissionWsTest<Sea | |||
String result = newRequest() | |||
.setParam(TEXT_QUERY, "project-key") | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result).contains("project-key") | |||
.doesNotContain("another-key"); | |||
@@ -190,7 +189,7 @@ public class SearchProjectPermissionsActionTest extends BasePermissionWsTest<Sea | |||
.setParam(TEXT_QUERY, "project") | |||
.setParam(PAGE_SIZE, "1001") | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result).contains("project-uuid-1", "project-uuid-999", "project-uuid-1001"); | |||
} | |||
@@ -201,11 +200,11 @@ public class SearchProjectPermissionsActionTest extends BasePermissionWsTest<Sea | |||
db.components().insertComponent(newDeveloper("developer-name")); | |||
db.components().insertComponent(newProjectDto("project-uuid")); | |||
byte[] wsResponse = newRequest() | |||
InputStream wsResponse = newRequest() | |||
.setMediaType(MediaTypes.PROTOBUF) | |||
.setParam(PARAM_QUALIFIER, Qualifiers.PROJECT) | |||
.execute() | |||
.output(); | |||
.getInputStream(); | |||
WsPermissions.SearchProjectPermissionsWsResponse result = WsPermissions.SearchProjectPermissionsWsResponse.parseFrom(wsResponse); | |||
assertThat(result.getProjectsList()) | |||
@@ -235,7 +234,7 @@ public class SearchProjectPermissionsActionTest extends BasePermissionWsTest<Sea | |||
@Test | |||
public void display_all_project_permissions() throws Exception { | |||
String result = newRequest().execute().outputAsString(); | |||
String result = newRequest().execute().getInput(); | |||
assertJson(result) | |||
.ignoreFields("permissions") | |||
@@ -272,8 +271,4 @@ public class SearchProjectPermissionsActionTest extends BasePermissionWsTest<Sea | |||
.setKey("net.java.openjdk:jdk7") | |||
.setUuid("0bd7b1e7-91d6-439e-a607-4a3a9aad3c6a")); | |||
} | |||
private WsTester.TestRequest newRequest() { | |||
return wsTester.newPostRequest(CONTROLLER, "search_project_permissions"); | |||
} | |||
} |
@@ -28,7 +28,6 @@ import org.sonar.db.user.UserDto; | |||
import org.sonar.server.exceptions.BadRequestException; | |||
import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.UnauthorizedException; | |||
import org.sonar.server.ws.WsTester; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.api.server.ws.WebService.Param.TEXT_QUERY; | |||
@@ -40,7 +39,6 @@ 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.test.JsonAssert.assertJson; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_KEY; | |||
@@ -62,7 +60,7 @@ public class UsersActionTest extends BasePermissionWsTest<UsersAction> { | |||
db.users().insertPermissionOnUser(user2, SCAN_EXECUTION); | |||
loginAsAdminOnDefaultOrganization(); | |||
String result = newRequest().execute().outputAsString(); | |||
String result = newRequest().execute().getInput(); | |||
assertJson(result).withStrictArrayOrder().isSimilarTo(getClass().getResource("users-example.json")); | |||
} | |||
@@ -72,7 +70,7 @@ public class UsersActionTest extends BasePermissionWsTest<UsersAction> { | |||
insertUsersHavingGlobalPermissions(); | |||
loginAsAdminOnDefaultOrganization(); | |||
String result = newRequest().setParam("permission", "scan").execute().outputAsString(); | |||
String result = newRequest().setParam("permission", "scan").execute().getInput(); | |||
assertJson(result).withStrictArrayOrder().isSimilarTo(getClass().getResource("UsersActionTest/users.json")); | |||
} | |||
@@ -97,7 +95,7 @@ public class UsersActionTest extends BasePermissionWsTest<UsersAction> { | |||
.setParam(PARAM_PERMISSION, ISSUE_ADMIN) | |||
.setParam(PARAM_PROJECT_ID, project.uuid()) | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result).contains(user.getLogin()) | |||
.doesNotContain(userHavePermissionOnAnotherProject.getLogin()) | |||
@@ -118,7 +116,7 @@ public class UsersActionTest extends BasePermissionWsTest<UsersAction> { | |||
String result = newRequest() | |||
.setParam(PARAM_PROJECT_ID, project.uuid()) | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result).contains(user.getLogin()) | |||
.doesNotContain(withoutPermission.getLogin()); | |||
@@ -140,7 +138,7 @@ public class UsersActionTest extends BasePermissionWsTest<UsersAction> { | |||
.setParam(PARAM_PROJECT_ID, project.uuid()) | |||
.setParam(TEXT_QUERY, "with") | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result) | |||
.contains(user.getLogin()) | |||
@@ -157,7 +155,7 @@ public class UsersActionTest extends BasePermissionWsTest<UsersAction> { | |||
.setParam("permission", "scan") | |||
.setParam(TEXT_QUERY, "ame-1") | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result).contains("login-1") | |||
.doesNotContain("login-2") | |||
@@ -171,7 +169,7 @@ public class UsersActionTest extends BasePermissionWsTest<UsersAction> { | |||
loginAsAdminOnDefaultOrganization(); | |||
String result = newRequest() | |||
.execute() | |||
.outputAsString(); | |||
.getInput(); | |||
assertThat(result).contains("login-1", "login-2", "login-3"); | |||
} | |||
@@ -244,7 +242,4 @@ public class UsersActionTest extends BasePermissionWsTest<UsersAction> { | |||
db.users().insertPermissionOnUser(user3, SYSTEM_ADMIN); | |||
} | |||
private WsTester.TestRequest newRequest() { | |||
return wsTester.newPostRequest(CONTROLLER, "users"); | |||
} | |||
} |
@@ -32,14 +32,13 @@ import org.sonar.server.exceptions.BadRequestException; | |||
import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonar.server.ws.TestRequest; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.api.security.DefaultGroups.ANYONE; | |||
import static org.sonar.api.web.UserRole.ADMIN; | |||
import static org.sonar.api.web.UserRole.CODEVIEWER; | |||
import static org.sonar.api.web.UserRole.ISSUE_ADMIN; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_NAME; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; | |||
@@ -192,7 +191,7 @@ public class AddGroupToTemplateActionTest extends BasePermissionWsTest<AddGroupT | |||
} | |||
private void newRequest(@Nullable String groupName, @Nullable String templateKey, @Nullable String permission) throws Exception { | |||
WsTester.TestRequest request = newRequest(); | |||
TestRequest request = newRequest(); | |||
if (groupName != null) { | |||
request.setParam(PARAM_GROUP_NAME, groupName); | |||
} | |||
@@ -211,8 +210,4 @@ public class AddGroupToTemplateActionTest extends BasePermissionWsTest<AddGroupT | |||
return db.getDbClient().permissionTemplateDao() | |||
.selectGroupNamesByQueryAndTemplate(db.getSession(), query, templateId); | |||
} | |||
private WsTester.TestRequest newRequest() { | |||
return wsTester.newPostRequest(CONTROLLER, "add_group_to_template"); | |||
} | |||
} |
@@ -29,13 +29,11 @@ import org.sonar.db.permission.template.PermissionTemplateDto; | |||
import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.ws.WsTester; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.mockito.Mockito.spy; | |||
import static org.mockito.Mockito.when; | |||
import static org.sonar.core.permission.GlobalPermissions.QUALITY_GATE_ADMIN; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_NAME; | |||
@@ -136,10 +134,6 @@ public class AddProjectCreatorToTemplateActionTest extends BasePermissionWsTest< | |||
assertThat(templatePermission.get().getWithProjectCreator()).isTrue(); | |||
} | |||
private WsTester.TestRequest newRequest() { | |||
return wsTester.newPostRequest(CONTROLLER, "add_project_creator_to_template"); | |||
} | |||
private PermissionTemplateCharacteristicDto reload(PermissionTemplateCharacteristicDto characteristic) { | |||
return db.getDbClient().permissionTemplateCharacteristicDao().selectByPermissionAndTemplateId(db.getSession(), characteristic.getPermission(), characteristic.getTemplateId()).get(); | |||
} |
@@ -31,21 +31,18 @@ import org.sonar.server.exceptions.BadRequestException; | |||
import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonar.server.ws.TestRequest; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.api.web.UserRole.CODEVIEWER; | |||
import static org.sonar.api.web.UserRole.ISSUE_ADMIN; | |||
import static org.sonar.core.permission.GlobalPermissions.QUALITY_PROFILE_ADMIN; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_NAME; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_USER_LOGIN; | |||
public class AddUserToTemplateActionTest extends BasePermissionWsTest<AddUserToTemplateAction> { | |||
private static final String ACTION = "add_user_to_template"; | |||
private UserDto user; | |||
private PermissionTemplateDto permissionTemplate; | |||
@@ -73,7 +70,7 @@ public class AddUserToTemplateActionTest extends BasePermissionWsTest<AddUserToT | |||
public void add_user_to_template_by_name() throws Exception { | |||
loginAsAdminOnDefaultOrganization(); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PERMISSION, CODEVIEWER) | |||
.setParam(PARAM_TEMPLATE_NAME, permissionTemplate.getName().toUpperCase()) | |||
@@ -158,7 +155,7 @@ public class AddUserToTemplateActionTest extends BasePermissionWsTest<AddUserToT | |||
} | |||
private void newRequest(@Nullable String userLogin, @Nullable String templateKey, @Nullable String permission) throws Exception { | |||
WsTester.TestRequest request = wsTester.newPostRequest(CONTROLLER, ACTION); | |||
TestRequest request = newRequest(); | |||
if (userLogin != null) { | |||
request.setParam(PARAM_USER_LOGIN, userLogin); | |||
} |
@@ -46,13 +46,13 @@ import org.sonar.server.permission.PermissionService; | |||
import org.sonar.server.permission.index.PermissionIndexer; | |||
import org.sonar.server.permission.index.PermissionIndexerTester; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonar.server.ws.TestRequest; | |||
import org.sonar.server.ws.TestResponse; | |||
import static java.util.Collections.singletonList; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.core.permission.GlobalPermissions.SYSTEM_ADMIN; | |||
import static org.sonar.db.component.ComponentTesting.newProjectDto; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_KEY; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_ID; | |||
@@ -63,8 +63,6 @@ public class ApplyTemplateActionTest extends BasePermissionWsTest<ApplyTemplateA | |||
@Rule | |||
public EsTester esTester = new EsTester(new IssueIndexDefinition(new MapSettings()), new ProjectMeasuresIndexDefinition(new MapSettings())); | |||
private static final String ACTION = "apply_template"; | |||
private UserDto user1; | |||
private UserDto user2; | |||
private GroupDto group1; | |||
@@ -126,7 +124,7 @@ public class ApplyTemplateActionTest extends BasePermissionWsTest<ApplyTemplateA | |||
public void apply_template_with_project_uuid_by_template_name() throws Exception { | |||
loginAsAdminOnDefaultOrganization(); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_TEMPLATE_NAME, template1.getName().toUpperCase()) | |||
.setParam(PARAM_PROJECT_ID, project.uuid()) | |||
.execute(); | |||
@@ -212,8 +210,8 @@ public class ApplyTemplateActionTest extends BasePermissionWsTest<ApplyTemplateA | |||
authorizationIndexerTester.verifyProjectExistsWithPermission(project.uuid(), singletonList(group2.getName()), Collections.emptyList()); | |||
} | |||
private WsTester.Result newRequest(@Nullable String templateUuid, @Nullable String projectUuid, @Nullable String projectKey) throws Exception { | |||
WsTester.TestRequest request = wsTester.newPostRequest(CONTROLLER, ACTION); | |||
private TestResponse newRequest(@Nullable String templateUuid, @Nullable String projectUuid, @Nullable String projectKey) throws Exception { | |||
TestRequest request = newRequest(); | |||
if (templateUuid != null) { | |||
request.setParam(PARAM_TEMPLATE_ID, templateUuid); | |||
} |
@@ -39,22 +39,18 @@ import org.sonar.server.i18n.I18nRule; | |||
import org.sonar.server.permission.PermissionService; | |||
import org.sonar.server.permission.index.PermissionIndexer; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.ws.WsTester; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.mockito.Mockito.mock; | |||
import static org.sonar.db.component.ComponentTesting.newDeveloper; | |||
import static org.sonar.db.component.ComponentTesting.newProjectDto; | |||
import static org.sonar.db.component.ComponentTesting.newView; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_QUALIFIER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_NAME; | |||
public class BulkApplyTemplateActionTest extends BasePermissionWsTest<BulkApplyTemplateAction> { | |||
private static final String ACTION = "bulk_apply_template"; | |||
private UserDto user1; | |||
private UserDto user2; | |||
private GroupDto group1; | |||
@@ -215,8 +211,4 @@ public class BulkApplyTemplateActionTest extends BasePermissionWsTest<BulkApplyT | |||
PermissionQuery query = PermissionQuery.builder().setPermission(permission).setComponentUuid(project.uuid()).build(); | |||
return db.getDbClient().userPermissionDao().selectUserIds(db.getSession(), db.getDefaultOrganization().getUuid(), query); | |||
} | |||
private WsTester.TestRequest newRequest() { | |||
return wsTester.newPostRequest(CONTROLLER, ACTION); | |||
} | |||
} |
@@ -27,12 +27,12 @@ import org.sonar.db.permission.template.PermissionTemplateDto; | |||
import org.sonar.server.exceptions.BadRequestException; | |||
import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonar.server.ws.TestRequest; | |||
import org.sonar.server.ws.TestResponse; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.core.permission.GlobalPermissions.QUALITY_PROFILE_ADMIN; | |||
import static org.sonar.test.JsonAssert.assertJson; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_DESCRIPTION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_NAME; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PROJECT_KEY_PATTERN; | |||
@@ -51,9 +51,9 @@ public class CreateTemplateActionTest extends BasePermissionWsTest<CreateTemplat | |||
public void create_full_permission_template() throws Exception { | |||
loginAsAdminOnDefaultOrganization(); | |||
WsTester.Result result = newRequest("Finance", "Permissions for financially related projects", ".*\\.finance\\..*"); | |||
TestResponse result = newRequest("Finance", "Permissions for financially related projects", ".*\\.finance\\..*"); | |||
assertJson(result.outputAsString()) | |||
assertJson(result.getInput()) | |||
.ignoreFields("id") | |||
.isSimilarTo(getClass().getResource("create_template-example.json")); | |||
PermissionTemplateDto finance = selectTemplateInDefaultOrganization("Finance"); | |||
@@ -129,8 +129,8 @@ public class CreateTemplateActionTest extends BasePermissionWsTest<CreateTemplat | |||
newRequest("Finance", null, null); | |||
} | |||
private WsTester.Result newRequest(@Nullable String name, @Nullable String description, @Nullable String projectPattern) throws Exception { | |||
WsTester.TestRequest request = wsTester.newPostRequest(CONTROLLER, "create_template"); | |||
private TestResponse newRequest(@Nullable String name, @Nullable String description, @Nullable String projectPattern) throws Exception { | |||
TestRequest request = newRequest(); | |||
if (name != null) { | |||
request.setParam(PARAM_NAME, name); | |||
} |
@@ -37,21 +37,19 @@ import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.exceptions.UnauthorizedException; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonar.server.ws.TestRequest; | |||
import org.sonar.server.ws.TestResponse; | |||
import static com.google.common.primitives.Longs.asList; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.mockito.Mockito.mock; | |||
import static org.mockito.Mockito.when; | |||
import static org.mockito.internal.util.collections.Sets.newSet; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_NAME; | |||
public class DeleteTemplateActionTest extends BasePermissionWsTest<DeleteTemplateAction> { | |||
private static final String ACTION = "delete_template"; | |||
private DefaultPermissionTemplateFinder defaultTemplatePermissionFinder = mock(DefaultPermissionTemplateFinder.class); | |||
private PermissionTemplateDto template; | |||
@@ -69,15 +67,15 @@ public class DeleteTemplateActionTest extends BasePermissionWsTest<DeleteTemplat | |||
@Test | |||
public void delete_template_in_db() throws Exception { | |||
WsTester.Result result = newRequest(template.getUuid()); | |||
TestResponse result = newRequest(template.getUuid()); | |||
assertThat(result.outputAsString()).isEmpty(); | |||
assertThat(result.getInput()).isEmpty(); | |||
assertThat(db.getDbClient().permissionTemplateDao().selectByUuid(db.getSession(), template.getUuid())).isNull(); | |||
} | |||
@Test | |||
public void delete_template_by_name_case_insensitive() throws Exception { | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_TEMPLATE_NAME, template.getName().toUpperCase()) | |||
.execute(); | |||
@@ -149,8 +147,8 @@ public class DeleteTemplateActionTest extends BasePermissionWsTest<DeleteTemplat | |||
return dto; | |||
} | |||
private WsTester.Result newRequest(@Nullable String id) throws Exception { | |||
WsTester.TestRequest request = wsTester.newPostRequest(CONTROLLER, ACTION); | |||
private TestResponse newRequest(@Nullable String id) throws Exception { | |||
TestRequest request = newRequest(); | |||
if (id != null) { | |||
request.setParam(PARAM_TEMPLATE_ID, id); | |||
} |
@@ -32,13 +32,12 @@ import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.exceptions.UnauthorizedException; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonar.server.ws.TestRequest; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.api.security.DefaultGroups.ANYONE; | |||
import static org.sonar.api.web.UserRole.CODEVIEWER; | |||
import static org.sonar.core.permission.GlobalPermissions.SCAN_EXECUTION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_GROUP_NAME; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; | |||
@@ -47,7 +46,6 @@ import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_T | |||
public class RemoveGroupFromTemplateActionTest extends BasePermissionWsTest<RemoveGroupFromTemplateAction> { | |||
private static final String ACTION = "remove_group_from_template"; | |||
private static final String PERMISSION = CODEVIEWER; | |||
private GroupDto group; | |||
@@ -76,7 +74,7 @@ public class RemoveGroupFromTemplateActionTest extends BasePermissionWsTest<Remo | |||
@Test | |||
public void remove_group_from_template_by_name_case_insensitive() throws Exception { | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_GROUP_NAME, group.getName()) | |||
.setParam(PARAM_PERMISSION, PERMISSION) | |||
.setParam(PARAM_TEMPLATE_NAME, template.getName().toUpperCase()) | |||
@@ -87,7 +85,7 @@ public class RemoveGroupFromTemplateActionTest extends BasePermissionWsTest<Remo | |||
@Test | |||
public void remove_group_with_group_id() throws Exception { | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_TEMPLATE_ID, template.getUuid()) | |||
.setParam(PARAM_PERMISSION, PERMISSION) | |||
.setParam(PARAM_GROUP_ID, String.valueOf(group.getId())) | |||
@@ -175,7 +173,7 @@ public class RemoveGroupFromTemplateActionTest extends BasePermissionWsTest<Remo | |||
} | |||
private void newRequest(@Nullable String groupName, @Nullable String templateKey, @Nullable String permission) throws Exception { | |||
WsTester.TestRequest request = wsTester.newPostRequest(CONTROLLER, ACTION); | |||
TestRequest request = newRequest(); | |||
if (groupName != null) { | |||
request.setParam(PARAM_GROUP_NAME, groupName); | |||
} |
@@ -31,20 +31,16 @@ import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.exceptions.UnauthorizedException; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.ws.WsTester; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.mockito.Mockito.mock; | |||
import static org.mockito.Mockito.when; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_NAME; | |||
public class RemoveProjectCreatorFromTemplateActionTest extends BasePermissionWsTest<RemoveProjectCreatorFromTemplateAction> { | |||
private static final String ACTION = "remove_project_creator_from_template"; | |||
private System2 system = mock(System2.class); | |||
private PermissionTemplateDto template; | |||
@@ -148,10 +144,6 @@ public class RemoveProjectCreatorFromTemplateActionTest extends BasePermissionWs | |||
assertThat(templatePermission).isNotPresent(); | |||
} | |||
private WsTester.TestRequest newRequest() { | |||
return wsTester.newPostRequest(CONTROLLER, ACTION); | |||
} | |||
private PermissionTemplateCharacteristicDto reload(PermissionTemplateCharacteristicDto characteristic) { | |||
return db.getDbClient().permissionTemplateCharacteristicDao().selectByPermissionAndTemplateId(db.getSession(), characteristic.getPermission(), characteristic.getTemplateId()) | |||
.get(); |
@@ -32,12 +32,11 @@ import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.exceptions.UnauthorizedException; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonar.server.ws.TestRequest; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.api.web.UserRole.CODEVIEWER; | |||
import static org.sonar.api.web.UserRole.ISSUE_ADMIN; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_NAME; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_USER_LOGIN; | |||
@@ -45,7 +44,6 @@ import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_U | |||
public class RemoveUserFromTemplateActionTest extends BasePermissionWsTest<RemoveUserFromTemplateAction> { | |||
private static final String DEFAULT_PERMISSION = CODEVIEWER; | |||
private static final String ACTION = "remove_user_from_template"; | |||
private UserDto user; | |||
private PermissionTemplateDto template; | |||
@@ -73,7 +71,7 @@ public class RemoveUserFromTemplateActionTest extends BasePermissionWsTest<Remov | |||
@Test | |||
public void remove_user_from_template_by_name_case_insensitive() throws Exception { | |||
loginAsAdminOnDefaultOrganization(); | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_USER_LOGIN, user.getLogin()) | |||
.setParam(PARAM_PERMISSION, DEFAULT_PERMISSION) | |||
.setParam(PARAM_TEMPLATE_NAME, template.getName().toUpperCase()) | |||
@@ -180,7 +178,7 @@ public class RemoveUserFromTemplateActionTest extends BasePermissionWsTest<Remov | |||
} | |||
private void newRequest(@Nullable String userLogin, @Nullable String templateKey, @Nullable String permission) throws Exception { | |||
WsTester.TestRequest request = wsTester.newPostRequest(CONTROLLER, ACTION); | |||
TestRequest request = newRequest(); | |||
if (userLogin != null) { | |||
request.setParam(PARAM_USER_LOGIN, userLogin); | |||
} |
@@ -36,22 +36,19 @@ import org.sonar.server.i18n.I18nRule; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.platform.PersistentSettings; | |||
import org.sonar.server.platform.SettingsChangeNotifier; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonar.server.ws.TestRequest; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.sonar.api.resources.Qualifiers.PROJECT; | |||
import static org.sonar.api.resources.Qualifiers.VIEW; | |||
import static org.sonar.server.permission.DefaultPermissionTemplates.DEFAULT_TEMPLATE_PROPERTY; | |||
import static org.sonar.server.permission.DefaultPermissionTemplates.defaultRootQualifierTemplateProperty; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_QUALIFIER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_NAME; | |||
public class SetDefaultTemplateActionTest extends BasePermissionWsTest<SetDefaultTemplateAction> { | |||
private static final String ACTION = "set_default_template"; | |||
private I18nRule i18n = new I18nRule(); | |||
private PersistentSettings persistentSettings = new PersistentSettings(new MapSettings(), db.getDbClient(), new SettingsChangeNotifier()); | |||
private PermissionTemplateDto template; | |||
@@ -90,7 +87,7 @@ public class SetDefaultTemplateActionTest extends BasePermissionWsTest<SetDefaul | |||
@Test | |||
public void update_settings_for_project_qualifier_by_template_name() throws Exception { | |||
wsTester.newPostRequest(CONTROLLER, ACTION) | |||
newRequest() | |||
.setParam(PARAM_TEMPLATE_NAME, template.getName().toUpperCase()) | |||
.execute(); | |||
db.getSession().commit(); | |||
@@ -150,7 +147,7 @@ public class SetDefaultTemplateActionTest extends BasePermissionWsTest<SetDefaul | |||
} | |||
private String newRequest(@Nullable String templateUuid, @Nullable String qualifier) throws Exception { | |||
WsTester.TestRequest request = wsTester.newPostRequest(CONTROLLER, ACTION); | |||
TestRequest request = newRequest(); | |||
if (templateUuid != null) { | |||
request.setParam(PARAM_TEMPLATE_ID, templateUuid); | |||
} | |||
@@ -158,6 +155,6 @@ public class SetDefaultTemplateActionTest extends BasePermissionWsTest<SetDefaul | |||
request.setParam(PARAM_QUALIFIER, qualifier); | |||
} | |||
return request.execute().outputAsString(); | |||
return request.execute().getInput(); | |||
} | |||
} |
@@ -19,6 +19,7 @@ | |||
*/ | |||
package org.sonar.server.permission.ws.template; | |||
import java.io.InputStream; | |||
import javax.annotation.Nullable; | |||
import org.junit.Test; | |||
import org.sonar.core.permission.GlobalPermissions; | |||
@@ -31,7 +32,6 @@ import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.exceptions.UnauthorizedException; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonarqube.ws.WsPermissions.WsGroupsResponse; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
@@ -46,7 +46,6 @@ import static org.sonar.db.permission.template.PermissionTemplateTesting.newPerm | |||
import static org.sonar.db.user.GroupTesting.newGroupDto; | |||
import static org.sonar.test.JsonAssert.assertJson; | |||
import static org.sonarqube.ws.MediaTypes.PROTOBUF; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_NAME; | |||
@@ -75,7 +74,8 @@ public class TemplateGroupsActionTest extends BasePermissionWsTest<TemplateGroup | |||
String response = newRequest() | |||
.setParam(PARAM_PERMISSION, ISSUE_ADMIN) | |||
.setParam(PARAM_TEMPLATE_ID, template.getUuid()) | |||
.execute().outputAsString(); | |||
.execute() | |||
.getInput(); | |||
assertJson(response) | |||
.ignoreFields("id") | |||
@@ -106,11 +106,11 @@ public class TemplateGroupsActionTest extends BasePermissionWsTest<TemplateGroup | |||
commit(); | |||
loginAsAdminOnDefaultOrganization(); | |||
byte[] output = newRequest() | |||
InputStream output = newRequest() | |||
.setMediaType(PROTOBUF) | |||
.setParam(PARAM_TEMPLATE_ID, template.getUuid()) | |||
.execute() | |||
.output(); | |||
.getInputStream(); | |||
WsGroupsResponse response = WsGroupsResponse.parseFrom(output); | |||
assertThat(response.getGroupsList()).extracting("name").containsExactly("Anyone", "group-1-name", "group-2-name"); | |||
@@ -140,12 +140,12 @@ public class TemplateGroupsActionTest extends BasePermissionWsTest<TemplateGroup | |||
commit(); | |||
loginAsAdminOnDefaultOrganization(); | |||
byte[] output = newRequest() | |||
InputStream output = newRequest() | |||
.setMediaType(PROTOBUF) | |||
.setParam(PARAM_PERMISSION, USER) | |||
.setParam(PARAM_TEMPLATE_ID, template.getUuid()) | |||
.execute() | |||
.output(); | |||
.getInputStream(); | |||
WsGroupsResponse response = WsGroupsResponse.parseFrom(output); | |||
assertThat(response.getGroupsList()).extracting("name").containsExactly("Anyone", "group-1-name"); | |||
@@ -170,11 +170,11 @@ public class TemplateGroupsActionTest extends BasePermissionWsTest<TemplateGroup | |||
commit(); | |||
loginAsAdminOnDefaultOrganization(); | |||
byte[] output = newRequest() | |||
InputStream output = newRequest() | |||
.setMediaType(PROTOBUF) | |||
.setParam(PARAM_TEMPLATE_NAME, template.getName()) | |||
.execute() | |||
.output(); | |||
.getInputStream(); | |||
WsGroupsResponse response = WsGroupsResponse.parseFrom(output); | |||
assertThat(response.getGroupsList()).extracting("name").containsExactly("Anyone", "group-1-name", "group-2-name"); | |||
@@ -191,14 +191,14 @@ public class TemplateGroupsActionTest extends BasePermissionWsTest<TemplateGroup | |||
commit(); | |||
loginAsAdminOnDefaultOrganization(); | |||
byte[] output = newRequest() | |||
InputStream output = newRequest() | |||
.setMediaType(PROTOBUF) | |||
.setParam(PARAM_PERMISSION, USER) | |||
.setParam(PARAM_TEMPLATE_NAME, template.getName()) | |||
.setParam(PAGE, "2") | |||
.setParam(PAGE_SIZE, "1") | |||
.execute() | |||
.output(); | |||
.getInputStream(); | |||
WsGroupsResponse response = WsGroupsResponse.parseFrom(output); | |||
assertThat(response.getGroupsList()).extracting("name").containsExactly("group-2-name"); | |||
@@ -215,12 +215,12 @@ public class TemplateGroupsActionTest extends BasePermissionWsTest<TemplateGroup | |||
commit(); | |||
loginAsAdminOnDefaultOrganization(); | |||
byte[] output = newRequest() | |||
InputStream output = newRequest() | |||
.setMediaType(PROTOBUF) | |||
.setParam(PARAM_TEMPLATE_NAME, template.getName()) | |||
.setParam(TEXT_QUERY, "-nam") | |||
.execute() | |||
.output(); | |||
.getInputStream(); | |||
WsGroupsResponse response = WsGroupsResponse.parseFrom(output); | |||
assertThat(response.getGroupsList()).extracting("name").containsExactly("group-1-name", "group-2-name"); | |||
@@ -236,12 +236,12 @@ public class TemplateGroupsActionTest extends BasePermissionWsTest<TemplateGroup | |||
commit(); | |||
loginAsAdminOnDefaultOrganization(); | |||
byte[] output = newRequest() | |||
InputStream output = newRequest() | |||
.setMediaType(PROTOBUF) | |||
.setParam(PARAM_TEMPLATE_ID, template.getUuid()) | |||
.setParam(TEXT_QUERY, "-name") | |||
.execute() | |||
.output(); | |||
.getInputStream(); | |||
WsGroupsResponse response = WsGroupsResponse.parseFrom(output); | |||
assertThat(response.getGroupsList()).extracting("name").containsExactly("group-1-name", "group-2-name", "group-3-name"); | |||
@@ -258,12 +258,12 @@ public class TemplateGroupsActionTest extends BasePermissionWsTest<TemplateGroup | |||
commit(); | |||
loginAsAdminOnDefaultOrganization(); | |||
byte[] output = newRequest() | |||
InputStream output = newRequest() | |||
.setMediaType(PROTOBUF) | |||
.setParam(PARAM_TEMPLATE_ID, template.getUuid()) | |||
.setParam(TEXT_QUERY, "nyo") | |||
.execute() | |||
.output(); | |||
.getInputStream(); | |||
WsGroupsResponse response = WsGroupsResponse.parseFrom(output); | |||
assertThat(response.getGroupsList()).extracting("name").containsExactly("Anyone"); | |||
@@ -364,8 +364,4 @@ public class TemplateGroupsActionTest extends BasePermissionWsTest<TemplateGroup | |||
private void commit() { | |||
db.commit(); | |||
} | |||
private WsTester.TestRequest newRequest() { | |||
return wsTester.newPostRequest(CONTROLLER, "template_groups"); | |||
} | |||
} |
@@ -19,6 +19,7 @@ | |||
*/ | |||
package org.sonar.server.permission.ws.template; | |||
import java.io.InputStream; | |||
import javax.annotation.Nullable; | |||
import org.junit.Test; | |||
import org.sonar.api.server.ws.WebService; | |||
@@ -31,7 +32,7 @@ import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.exceptions.UnauthorizedException; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonar.server.ws.TestRequest; | |||
import org.sonarqube.ws.WsPermissions; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
@@ -44,7 +45,6 @@ import static org.sonar.db.permission.template.PermissionTemplateTesting.newPerm | |||
import static org.sonar.db.user.UserTesting.newUserDto; | |||
import static org.sonar.test.JsonAssert.assertJson; | |||
import static org.sonarqube.ws.MediaTypes.PROTOBUF; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_PERMISSION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_TEMPLATE_NAME; | |||
@@ -67,7 +67,7 @@ public class TemplateUsersActionTest extends BasePermissionWsTest<TemplateUsersA | |||
addUserToTemplate(newPermissionTemplateUser(ADMIN, template1, user2)); | |||
loginAsAdminOnDefaultOrganization(); | |||
String result = newRequest(null, template1.getUuid()).execute().outputAsString(); | |||
String result = newRequest(null, template1.getUuid()).execute().getInput(); | |||
assertJson(result).isSimilarTo(getClass().getResource("template_users-example.json")); | |||
} | |||
@@ -88,10 +88,10 @@ public class TemplateUsersActionTest extends BasePermissionWsTest<TemplateUsersA | |||
PermissionTemplateDto anotherTemplate = addTemplateToDefaultOrganization(); | |||
addUserToTemplate(newPermissionTemplateUser(USER, anotherTemplate, user1)); | |||
byte[] bytes = newRequest(null, null) | |||
InputStream bytes = newRequest(null, null) | |||
.setParam(PARAM_TEMPLATE_NAME, template.getName()) | |||
.setMediaType(PROTOBUF) | |||
.execute().output(); | |||
.execute().getInputStream(); | |||
WsPermissions.UsersWsResponse response = WsPermissions.UsersWsResponse.parseFrom(bytes); | |||
assertThat(response.getUsersList()).extracting("login").containsExactly("login-1", "login-2", "login-3"); | |||
@@ -117,11 +117,11 @@ public class TemplateUsersActionTest extends BasePermissionWsTest<TemplateUsersA | |||
PermissionTemplateDto anotherTemplate = addTemplateToDefaultOrganization(); | |||
addUserToTemplate(newPermissionTemplateUser(USER, anotherTemplate, user1)); | |||
byte[] bytes = newRequest(null, null) | |||
InputStream bytes = newRequest(null, null) | |||
.setParam(PARAM_TEMPLATE_NAME, template.getName()) | |||
.setParam(WebService.Param.TEXT_QUERY, "ame-1") | |||
.setMediaType(PROTOBUF) | |||
.execute().output(); | |||
.execute().getInputStream(); | |||
WsPermissions.UsersWsResponse response = WsPermissions.UsersWsResponse.parseFrom(bytes); | |||
assertThat(response.getUsersList()).extracting("login").containsOnly("login-1"); | |||
@@ -143,9 +143,9 @@ public class TemplateUsersActionTest extends BasePermissionWsTest<TemplateUsersA | |||
addUserToTemplate(newPermissionTemplateUser(USER, anotherTemplate, user1)); | |||
loginAsAdminOnDefaultOrganization(); | |||
byte[] bytes = newRequest(USER, template.getUuid()) | |||
InputStream bytes = newRequest(USER, template.getUuid()) | |||
.setMediaType(PROTOBUF) | |||
.execute().output(); | |||
.execute().getInputStream(); | |||
WsPermissions.UsersWsResponse response = WsPermissions.UsersWsResponse.parseFrom(bytes); | |||
assertThat(response.getUsersList()).extracting("login").containsExactly("login-1", "login-2"); | |||
assertThat(response.getUsers(0).getPermissionsList()).containsOnly("issueadmin", "user"); | |||
@@ -168,13 +168,13 @@ public class TemplateUsersActionTest extends BasePermissionWsTest<TemplateUsersA | |||
addUserToTemplate(newPermissionTemplateUser(USER, anotherTemplate, user1)); | |||
loginAsAdminOnDefaultOrganization(); | |||
byte[] bytes = newRequest(USER, null) | |||
InputStream bytes = newRequest(USER, null) | |||
.setParam(PARAM_TEMPLATE_NAME, template.getName()) | |||
.setParam(WebService.Param.SELECTED, "all") | |||
.setParam(WebService.Param.PAGE, "2") | |||
.setParam(WebService.Param.PAGE_SIZE, "1") | |||
.setMediaType(PROTOBUF) | |||
.execute().output(); | |||
.execute().getInputStream(); | |||
WsPermissions.UsersWsResponse response = WsPermissions.UsersWsResponse.parseFrom(bytes); | |||
assertThat(response.getUsersList()).extracting("login").containsOnly("login-2"); | |||
@@ -192,10 +192,10 @@ public class TemplateUsersActionTest extends BasePermissionWsTest<TemplateUsersA | |||
addUserToTemplate(newPermissionTemplateUser(ISSUE_ADMIN, template, user3)); | |||
loginAsAdminOnDefaultOrganization(); | |||
byte[] bytes = newRequest(null, null) | |||
InputStream bytes = newRequest(null, null) | |||
.setParam(PARAM_TEMPLATE_NAME, template.getName()) | |||
.setMediaType(PROTOBUF) | |||
.execute().output(); | |||
.execute().getInputStream(); | |||
WsPermissions.UsersWsResponse response = WsPermissions.UsersWsResponse.parseFrom(bytes); | |||
assertThat(response.getUsersList()).extracting("login").containsExactly("login-1", "login-2", "login-3"); | |||
@@ -209,11 +209,11 @@ public class TemplateUsersActionTest extends BasePermissionWsTest<TemplateUsersA | |||
addUserToTemplate(newPermissionTemplateUser(USER, anotherTemplate, user)); | |||
loginAsAdminOnDefaultOrganization(); | |||
byte[] bytes = newRequest(null, null) | |||
InputStream bytes = newRequest(null, null) | |||
.setParam(PARAM_TEMPLATE_NAME, template.getName()) | |||
.setMediaType(PROTOBUF) | |||
.execute() | |||
.output(); | |||
.getInputStream(); | |||
WsPermissions.UsersWsResponse response = WsPermissions.UsersWsResponse.parseFrom(bytes); | |||
assertThat(response.getUsersList()).isEmpty(); | |||
@@ -298,8 +298,8 @@ public class TemplateUsersActionTest extends BasePermissionWsTest<TemplateUsersA | |||
.setUserId(user.getId()); | |||
} | |||
private WsTester.TestRequest newRequest(@Nullable String permission, @Nullable String templateUuid) { | |||
WsTester.TestRequest request = wsTester.newPostRequest(CONTROLLER, "template_users"); | |||
private TestRequest newRequest(@Nullable String permission, @Nullable String templateUuid) { | |||
TestRequest request = newRequest(); | |||
if (permission != null) { | |||
request.setParam(PARAM_PERMISSION, permission); | |||
} |
@@ -30,7 +30,7 @@ import org.sonar.server.exceptions.ForbiddenException; | |||
import org.sonar.server.exceptions.NotFoundException; | |||
import org.sonar.server.exceptions.UnauthorizedException; | |||
import org.sonar.server.permission.ws.BasePermissionWsTest; | |||
import org.sonar.server.ws.WsTester; | |||
import org.sonar.server.ws.TestRequest; | |||
import static org.assertj.core.api.Assertions.assertThat; | |||
import static org.mockito.Mockito.spy; | |||
@@ -38,7 +38,6 @@ import static org.mockito.Mockito.when; | |||
import static org.sonar.core.permission.GlobalPermissions.SCAN_EXECUTION; | |||
import static org.sonar.db.permission.template.PermissionTemplateTesting.newPermissionTemplateDto; | |||
import static org.sonar.test.JsonAssert.assertJson; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.CONTROLLER; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_DESCRIPTION; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_ID; | |||
import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_NAME; | |||
@@ -46,8 +45,6 @@ import static org.sonarqube.ws.client.permission.PermissionsWsParameters.PARAM_P | |||
public class UpdateTemplateActionTest extends BasePermissionWsTest<UpdateTemplateAction> { | |||
private static final String ACTION = "update_template"; | |||
private System2 system = spy(System2.INSTANCE); | |||
private PermissionTemplateDto template; | |||
@@ -201,7 +198,7 @@ public class UpdateTemplateActionTest extends BasePermissionWsTest<UpdateTemplat | |||
} | |||
private String call(@Nullable String key, @Nullable String name, @Nullable String description, @Nullable String projectPattern) throws Exception { | |||
WsTester.TestRequest request = wsTester.newPostRequest(CONTROLLER, ACTION); | |||
TestRequest request = newRequest(); | |||
if (key != null) { | |||
request.setParam(PARAM_ID, key); | |||
} | |||
@@ -215,6 +212,6 @@ public class UpdateTemplateActionTest extends BasePermissionWsTest<UpdateTemplat | |||
request.setParam(PARAM_PROJECT_KEY_PATTERN, projectPattern); | |||
} | |||
return request.execute().outputAsString(); | |||
return request.execute().getInput(); | |||
} | |||
} |