aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorDaniel Schwarz <daniel.schwarz@sonarsource.com>2017-11-14 10:42:32 +0100
committerSimon Brandhof <simon.brandhof@sonarsource.com>2017-11-16 17:37:18 +0100
commitbff9cf373e2ecbe66344d58c3423b873f1fb17c5 (patch)
tree1aab779cba6f12fb3ea423d80aab3d65f68ef420 /tests
parenta7d7fa94bf725af62447f4d42fc8a923bba77ff9 (diff)
downloadsonarqube-bff9cf373e2ecbe66344d58c3423b873f1fb17c5.tar.gz
sonarqube-bff9cf373e2ecbe66344d58c3423b873f1fb17c5.zip
Auto-generate sonar-ws for integration tests
Diffstat (limited to 'tests')
-rw-r--r--tests/plugins/ws-plugin/src/main/java/LocalCallWebService.java4
-rw-r--r--tests/pom.xml25
-rw-r--r--tests/src/test/java/org/sonarqube/tests/Category1Suite.java15
-rw-r--r--tests/src/test/java/org/sonarqube/tests/analysis/AnalysisEsResilienceTest.java28
-rw-r--r--tests/src/test/java/org/sonarqube/tests/analysis/FavoriteTest.java6
-rw-r--r--tests/src/test/java/org/sonarqube/tests/analysis/FileExclusionsTest.java2
-rw-r--r--tests/src/test/java/org/sonarqube/tests/analysis/IssueExclusionsTest.java23
-rw-r--r--tests/src/test/java/org/sonarqube/tests/analysis/LinksTest.java8
-rw-r--r--tests/src/test/java/org/sonarqube/tests/analysis/PermissionTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/authorization/AuthorizationSuite.java1
-rw-r--r--tests/src/test/java/org/sonarqube/tests/authorization/PermissionSearchTest.java14
-rw-r--r--tests/src/test/java/org/sonarqube/tests/authorization/PermissionTemplatePageTest.java69
-rw-r--r--tests/src/test/java/org/sonarqube/tests/authorization/PermissionTemplateTest.java16
-rw-r--r--tests/src/test/java/org/sonarqube/tests/authorization/ProvisioningPermissionTest.java2
-rw-r--r--tests/src/test/java/org/sonarqube/tests/ce/CeShutdownTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/ce/CeWorkersTest.java45
-rw-r--r--tests/src/test/java/org/sonarqube/tests/ce/CeWsTest.java24
-rw-r--r--tests/src/test/java/org/sonarqube/tests/ce/ReportFailureNotificationTest.java24
-rw-r--r--tests/src/test/java/org/sonarqube/tests/component/BranchTest.java6
-rw-r--r--tests/src/test/java/org/sonarqube/tests/component/CodePageTest.java6
-rw-r--r--tests/src/test/java/org/sonarqube/tests/component/ComponentsWsTest.java6
-rw-r--r--tests/src/test/java/org/sonarqube/tests/duplication/NewDuplicationsTest.java10
-rw-r--r--tests/src/test/java/org/sonarqube/tests/issue/AutoAssignTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/issue/IssueNotificationsTest.java14
-rw-r--r--tests/src/test/java/org/sonarqube/tests/issue/IssueTagsTest.java2
-rw-r--r--tests/src/test/java/org/sonarqube/tests/issue/NewIssuesMeasureTest.java6
-rw-r--r--tests/src/test/java/org/sonarqube/tests/issue/OrganizationIssueAssignTest.java2
-rw-r--r--tests/src/test/java/org/sonarqube/tests/issue/OrganizationIssuesPageTest.java8
-rw-r--r--tests/src/test/java/org/sonarqube/tests/lite/LiteTest.java10
-rw-r--r--tests/src/test/java/org/sonarqube/tests/measure/MeasuresWsTest.java10
-rw-r--r--tests/src/test/java/org/sonarqube/tests/measure/SincePreviousVersionHistoryTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/measure/SinceXDaysHistoryTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/measure/TimeMachineTest.java6
-rw-r--r--tests/src/test/java/org/sonarqube/tests/organization/BillingTest.java11
-rw-r--r--tests/src/test/java/org/sonarqube/tests/organization/OrganizationMembershipTest.java2
-rw-r--r--tests/src/test/java/org/sonarqube/tests/organization/OrganizationMembershipUiTest.java2
-rw-r--r--tests/src/test/java/org/sonarqube/tests/organization/OrganizationTest.java32
-rw-r--r--tests/src/test/java/org/sonarqube/tests/organization/OrganizationWebExtensionsTest.java2
-rw-r--r--tests/src/test/java/org/sonarqube/tests/organization/PersonalOrganizationTest.java15
-rw-r--r--tests/src/test/java/org/sonarqube/tests/organization/RootUserTest.java14
-rw-r--r--tests/src/test/java/org/sonarqube/tests/performance/AbstractPerfTest.java25
-rw-r--r--tests/src/test/java/org/sonarqube/tests/performance/PerfRule.java29
-rw-r--r--tests/src/test/java/org/sonarqube/tests/performance/scanner/DuplicationTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/project/ProjectBulkDeletionPageTest.java8
-rw-r--r--tests/src/test/java/org/sonarqube/tests/project/ProjectBulkDeletionTest.java12
-rw-r--r--tests/src/test/java/org/sonarqube/tests/project/ProjectDeletionTest.java14
-rw-r--r--tests/src/test/java/org/sonarqube/tests/project/ProjectFilterTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/project/ProjectKeyUpdateTest.java22
-rw-r--r--tests/src/test/java/org/sonarqube/tests/project/ProjectLinksTest.java2
-rw-r--r--tests/src/test/java/org/sonarqube/tests/project/ProjectProvisioningTest.java10
-rw-r--r--tests/src/test/java/org/sonarqube/tests/project/ProjectSearchTest.java22
-rw-r--r--tests/src/test/java/org/sonarqube/tests/project/ProjectSettingsTest.java (renamed from tests/src/test/java/org/sonarqube/tests/projectAdministration/ProjectAdministrationTest.java)88
-rw-r--r--tests/src/test/java/org/sonarqube/tests/project/ProjectSuite.java7
-rw-r--r--tests/src/test/java/org/sonarqube/tests/project/ProjectVisibilityPageTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/project/ProjectsPageTest.java6
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateForSmallChangesetsTest.java57
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateTest.java34
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateUiTest.java8
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityGate/ProjectQualityGatePageTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateNotificationTest.java14
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateOnRatingMeasuresTest.java40
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateTest.java47
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateUiTest.java18
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityModel/ReliabilityMeasureTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityModel/SecurityMeasureTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityProfile/ActiveRuleEsResilienceTest.java6
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityProfile/BuiltInQualityProfilesNotificationTest.java12
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityProfile/BuiltInQualityProfilesTest.java14
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityProfile/CustomQualityProfilesTest.java16
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityProfile/OrganizationQualityProfilesUiTest.java6
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityProfile/QualityProfilesEditTest.java30
-rw-r--r--tests/src/test/java/org/sonarqube/tests/qualityProfile/QualityProfilesWsTest.java10
-rw-r--r--tests/src/test/java/org/sonarqube/tests/rule/RulesWsTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/serverSystem/RestartTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/serverSystem/ServerSystemRestartingOrchestrator.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/serverSystem/ServerSystemTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/serverSystem/SystemStateTest.java44
-rw-r--r--tests/src/test/java/org/sonarqube/tests/settings/DeprecatedPropertiesWsTest.java5
-rw-r--r--tests/src/test/java/org/sonarqube/tests/settings/SettingsTest.java5
-rw-r--r--tests/src/test/java/org/sonarqube/tests/startup/StartupIndexationTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/test/NewCoverageTest.java4
-rw-r--r--tests/src/test/java/org/sonarqube/tests/ui/UiExtensionsTest.java10
-rw-r--r--tests/src/test/java/org/sonarqube/tests/upgrade/UpgradeTest.java2
-rw-r--r--tests/src/test/java/org/sonarqube/tests/user/BaseIdentityProviderTest.java8
-rw-r--r--tests/src/test/java/org/sonarqube/tests/user/ForceAuthenticationTest.java2
-rw-r--r--tests/src/test/java/org/sonarqube/tests/user/LocalAuthenticationTest.java14
-rw-r--r--tests/src/test/java/org/sonarqube/tests/user/MyAccountPageTest.java2
-rw-r--r--tests/src/test/java/org/sonarqube/tests/user/OAuth2IdentityProviderTest.java2
-rw-r--r--tests/src/test/java/org/sonarqube/tests/user/OnboardingTest.java20
-rw-r--r--tests/src/test/java/org/sonarqube/tests/user/OrganizationIdentityProviderTest.java26
-rw-r--r--tests/src/test/java/org/sonarqube/tests/user/RealmAuthenticationTest.java12
-rw-r--r--tests/src/test/java/org/sonarqube/tests/user/SsoAuthenticationTest.java35
-rw-r--r--tests/src/test/java/org/sonarqube/tests/user/UserEsResilienceTest.java2
-rw-r--r--tests/src/test/java/org/sonarqube/tests/user/UsersPageTest.java6
-rw-r--r--tests/src/test/java/util/ItUtils.java10
-rw-r--r--tests/src/test/java/util/user/UserRule.java42
-rw-r--r--tests/src/test/java/util/user/Users.java1
97 files changed, 654 insertions, 689 deletions
diff --git a/tests/plugins/ws-plugin/src/main/java/LocalCallWebService.java b/tests/plugins/ws-plugin/src/main/java/LocalCallWebService.java
index 7de752bba25..d626d68d02f 100644
--- a/tests/plugins/ws-plugin/src/main/java/LocalCallWebService.java
+++ b/tests/plugins/ws-plugin/src/main/java/LocalCallWebService.java
@@ -22,7 +22,7 @@ import org.sonar.api.server.ws.RequestHandler;
import org.sonar.api.server.ws.Response;
import org.sonar.api.server.ws.WebService;
import org.sonarqube.ws.MediaTypes;
-import org.sonarqube.ws.WsCe;
+import org.sonarqube.ws.Ce;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.LocalWsClientFactory;
import org.sonarqube.ws.client.WsClient;
@@ -50,7 +50,7 @@ public final class LocalCallWebService implements WebService {
public void handle(Request request, Response response) throws Exception {
WsClient client = wsClientFactory.newClient(request.localConnector());
- WsCe.TaskTypesWsResponse ceTaskTypes = client.ce().taskTypes();
+ Ce.TaskTypesWsResponse ceTaskTypes = client.ce().taskTypes();
response.stream().setStatus(ceTaskTypes.getTaskTypesCount() > 0 ? 200 : 500);
}
}
diff --git a/tests/pom.xml b/tests/pom.xml
index 36edfa2bc3f..c36c4aaee20 100644
--- a/tests/pom.xml
+++ b/tests/pom.xml
@@ -43,6 +43,13 @@
<scope>test</scope>
</dependency>
<dependency>
+ <!-- required for overriding ws-client 4.5 to have complete error stacktraces
+ in Issue tests -->
+ <groupId>org.codehaus.sonar</groupId>
+ <artifactId>sonar-ws-client</artifactId>
+ <version>5.0</version>
+ </dependency>
+ <dependency>
<groupId>org.sonarsource.sonarqube</groupId>
<artifactId>sonar-application</artifactId>
<version>${project.version}</version>
@@ -68,11 +75,6 @@
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>org.codehaus.sonar</groupId>
- <artifactId>sonar-ws-client</artifactId>
- <version>5.0</version>
- </dependency>
- <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
@@ -81,10 +83,6 @@
<artifactId>assertj-core</artifactId>
</dependency>
<dependency>
- <groupId>org.assertj</groupId>
- <artifactId>assertj-guava</artifactId>
- </dependency>
- <dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-all</artifactId>
</dependency>
@@ -98,19 +96,10 @@
<version>1.2.0</version>
</dependency>
<dependency>
- <groupId>org.jsoup</groupId>
- <artifactId>jsoup</artifactId>
- <version>1.8.3</version>
- </dependency>
- <dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>mockwebserver</artifactId>
</dependency>
<dependency>
- <groupId>org.apache.commons</groupId>
- <artifactId>commons-email</artifactId>
- </dependency>
- <dependency>
<groupId>org.subethamail</groupId>
<artifactId>subethasmtp</artifactId>
</dependency>
diff --git a/tests/src/test/java/org/sonarqube/tests/Category1Suite.java b/tests/src/test/java/org/sonarqube/tests/Category1Suite.java
index 34afd54d11b..eca1a1038f7 100644
--- a/tests/src/test/java/org/sonarqube/tests/Category1Suite.java
+++ b/tests/src/test/java/org/sonarqube/tests/Category1Suite.java
@@ -24,7 +24,6 @@ import org.junit.ClassRule;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.sonarqube.tests.ce.BackgroundTasksTest;
-import org.sonarqube.tests.projectAdministration.ProjectAdministrationTest;
import org.sonarqube.tests.settings.DeprecatedPropertiesWsTest;
import org.sonarqube.tests.settings.EmailsTest;
import org.sonarqube.tests.settings.PropertySetsTest;
@@ -42,7 +41,6 @@ import static util.ItUtils.xooPlugin;
@RunWith(Suite.class)
@Suite.SuiteClasses({
UsersPageTest.class,
- ProjectAdministrationTest.class,
BackgroundTasksTest.class,
DeprecatedPropertiesWsTest.class,
EmailsTest.class,
@@ -57,18 +55,19 @@ public class Category1Suite {
.addPlugin(pluginArtifact("property-sets-plugin"))
.addPlugin(pluginArtifact("sonar-subcategories-plugin"))
- // Used in I18nTest
- .addPlugin(pluginArtifact("l10n-fr-pack"))
-
- // 1 second. Required for notification test.
- .setServerProperty("sonar.notifications.delay", "1")
-
// Used in SettingsTest.global_property_change_extension_point
.addPlugin(pluginArtifact("global-property-change-plugin"))
// Used in SettingsTest.should_get_settings_default_value
.addPlugin(pluginArtifact("server-plugin"))
+
+ // Used in I18nTest
+ .addPlugin(pluginArtifact("l10n-fr-pack"))
+
+ // 1 second. Required for notification test.
+ .setServerProperty("sonar.notifications.delay", "1")
+
.addPlugin(pluginArtifact("posttask-plugin"))
// reduce memory for Elasticsearch to 128M
diff --git a/tests/src/test/java/org/sonarqube/tests/analysis/AnalysisEsResilienceTest.java b/tests/src/test/java/org/sonarqube/tests/analysis/AnalysisEsResilienceTest.java
index db55ef7f23f..c0615144afd 100644
--- a/tests/src/test/java/org/sonarqube/tests/analysis/AnalysisEsResilienceTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/analysis/AnalysisEsResilienceTest.java
@@ -35,16 +35,16 @@ import org.junit.After;
import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
-import org.sonarqube.tests.Byteman;
import org.sonarqube.qa.util.Tester;
+import org.sonarqube.tests.Byteman;
+import org.sonarqube.ws.Ce;
import org.sonarqube.ws.Common;
import org.sonarqube.ws.Issues;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.QualityProfiles.CreateWsResponse.QualityProfile;
-import org.sonarqube.ws.WsCe;
-import org.sonarqube.ws.WsProjects;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
-import org.sonarqube.ws.client.ce.TaskWsRequest;
+import org.sonarqube.ws.Qualityprofiles.CreateWsResponse.QualityProfile;
+import org.sonarqube.ws.Projects;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
+import org.sonarqube.ws.client.ce.TaskRequest;
import org.sonarqube.ws.client.component.SuggestionsWsRequest;
import org.sonarqube.ws.client.issue.SearchWsRequest;
import util.ItUtils;
@@ -52,7 +52,7 @@ import util.ItUtils;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.tuple;
import static org.sonarqube.tests.Byteman.Process.CE;
-import static org.sonarqube.ws.WsCe.TaskStatus.FAILED;
+import static org.sonarqube.ws.Ce.TaskStatus.FAILED;
import static util.ItUtils.projectDir;
public class AnalysisEsResilienceTest {
@@ -86,7 +86,7 @@ public class AnalysisEsResilienceTest {
public void activation_and_deactivation_of_rule_is_resilient_to_indexing_errors() throws Exception {
Organization organization = tester.organizations().generate();
User orgAdministrator = tester.users().generateAdministrator(organization);
- WsProjects.CreateWsResponse.Project project = tester.projects().generate(organization);
+ Projects.CreateWsResponse.Project project = tester.projects().provision(organization);
String projectKey = project.getKey();
String fileKey = projectKey + ":src/main/xoo/sample/Sample.xoo";
String file2Key = projectKey + ":src/main/xoo/sample/Sample2.xoo";
@@ -134,7 +134,7 @@ public class AnalysisEsResilienceTest {
public void purge_mechanism_must_be_resilient_at_next_analysis() throws Exception {
Organization organization = tester.organizations().generate();
User orgAdministrator = tester.users().generateAdministrator(organization);
- WsProjects.CreateWsResponse.Project project = tester.projects().generate(organization);
+ Projects.CreateWsResponse.Project project = tester.projects().provision(organization);
String projectKey = project.getKey();
String fileKey = projectKey + ":src/main/xoo/sample/Sample.xoo";
@@ -158,9 +158,9 @@ public class AnalysisEsResilienceTest {
String taskUuid = executeAnalysis(projectKey, organization, orgAdministrator, "analysis/resilience/resilience-purge", "2000-01-02");
// The task has failed
- TaskWsRequest request = TaskWsRequest.newBuilder(taskUuid).withErrorStacktrace().build();
- WsCe.Task task = tester.wsClient().ce().task(request).getTask();
- assertThat(task.getStatus()).isEqualTo(WsCe.TaskStatus.FAILED);
+ TaskRequest request = new TaskRequest().setId(taskUuid).setAdditionalFields(Collections.singletonList("stacktrace"));
+ Ce.Task task = tester.wsClient().ce().task(request).getTask();
+ assertThat(task.getStatus()).isEqualTo(Ce.TaskStatus.FAILED);
assertThat(task.getErrorMessage()).contains("Unrecoverable indexation failures");
assertThat(task.getErrorStacktrace())
.contains("Caused by: java.lang.IllegalStateException: Unrecoverable indexation failures");
@@ -208,7 +208,7 @@ public class AnalysisEsResilienceTest {
public void compute_engine_task_must_be_red_when_es_is_not_available() throws Exception {
Organization organization = tester.organizations().generate();
User orgAdministrator = tester.users().generateAdministrator(organization);
- WsProjects.CreateWsResponse.Project project = tester.projects().generate(organization);
+ Projects.CreateWsResponse.Project project = tester.projects().provision(organization);
String projectKey = project.getKey();
String fileKey = projectKey + ":src/main/xoo/sample/Sample.xoo";
@@ -220,7 +220,7 @@ public class AnalysisEsResilienceTest {
tester.elasticsearch().lockWrites("issues");
String analysisKey = executeAnalysis(projectKey, organization, orgAdministrator, "analysis/resilience/resilience-sample-v1", null);
- WsCe.TaskResponse task = tester.wsClient().ce().task(analysisKey);
+ Ce.TaskResponse task = tester.wsClient().ce().task(new TaskRequest().setId(analysisKey));
assertThat(task.getTask().getStatus()).isEqualTo(FAILED);
}
diff --git a/tests/src/test/java/org/sonarqube/tests/analysis/FavoriteTest.java b/tests/src/test/java/org/sonarqube/tests/analysis/FavoriteTest.java
index f94f6aa2833..1bb37ef7303 100644
--- a/tests/src/test/java/org/sonarqube/tests/analysis/FavoriteTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/analysis/FavoriteTest.java
@@ -29,7 +29,7 @@ import org.junit.ClassRule;
import org.junit.Test;
import org.sonarqube.ws.Favorites;
import org.sonarqube.ws.Favorites.Favorite;
-import org.sonarqube.ws.WsPermissions;
+import org.sonarqube.ws.Permissions;
import org.sonarqube.ws.client.WsClient;
import org.sonarqube.ws.client.favorite.SearchRequest;
import org.sonarqube.ws.client.permission.AddProjectCreatorToTemplateWsRequest;
@@ -105,7 +105,7 @@ public class FavoriteTest {
}
private void addProjectCreatorPermission() {
- WsPermissions.SearchTemplatesWsResponse permissionTemplates = adminWsClient.permissions().searchTemplates(new SearchTemplatesWsRequest());
+ Permissions.SearchTemplatesWsResponse permissionTemplates = adminWsClient.permissions().searchTemplates(new SearchTemplatesWsRequest());
assertThat(permissionTemplates.getDefaultTemplatesCount()).isEqualTo(1);
adminWsClient.permissions().addProjectCreatorToTemplate(AddProjectCreatorToTemplateWsRequest.builder()
.setTemplateId(permissionTemplates.getDefaultTemplates(0).getTemplateId())
@@ -114,7 +114,7 @@ public class FavoriteTest {
}
private void removeProjectCreatorPermission() {
- WsPermissions.SearchTemplatesWsResponse permissionTemplates = adminWsClient.permissions().searchTemplates(new SearchTemplatesWsRequest());
+ Permissions.SearchTemplatesWsResponse permissionTemplates = adminWsClient.permissions().searchTemplates(new SearchTemplatesWsRequest());
assertThat(permissionTemplates.getDefaultTemplatesCount()).isEqualTo(1);
adminWsClient.permissions().removeProjectCreatorFromTemplate(RemoveProjectCreatorFromTemplateWsRequest.builder()
.setTemplateId(permissionTemplates.getDefaultTemplates(0).getTemplateId())
diff --git a/tests/src/test/java/org/sonarqube/tests/analysis/FileExclusionsTest.java b/tests/src/test/java/org/sonarqube/tests/analysis/FileExclusionsTest.java
index c5e11147036..980cd9cafae 100644
--- a/tests/src/test/java/org/sonarqube/tests/analysis/FileExclusionsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/analysis/FileExclusionsTest.java
@@ -27,7 +27,7 @@ import java.util.Map;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Test;
-import org.sonarqube.ws.WsComponents.Component;
+import org.sonarqube.ws.Components.Component;
import org.sonarqube.ws.client.component.TreeWsRequest;
import util.ItUtils;
diff --git a/tests/src/test/java/org/sonarqube/tests/analysis/IssueExclusionsTest.java b/tests/src/test/java/org/sonarqube/tests/analysis/IssueExclusionsTest.java
index 615a5a2aeb6..19dc6faba4c 100644
--- a/tests/src/test/java/org/sonarqube/tests/analysis/IssueExclusionsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/analysis/IssueExclusionsTest.java
@@ -22,11 +22,13 @@ package org.sonarqube.tests.analysis;
import com.sonar.orchestrator.Orchestrator;
import com.sonar.orchestrator.build.BuildResult;
import com.sonar.orchestrator.build.SonarScanner;
-import org.sonarqube.tests.Category4Suite;
import java.util.Map;
-import org.junit.Before;
import org.junit.ClassRule;
+import org.junit.Rule;
import org.junit.Test;
+import org.sonarqube.qa.util.Tester;
+import org.sonarqube.tests.Category4Suite;
+import org.sonarqube.ws.client.qualityprofile.AddProjectRequest;
import util.ItUtils;
import static org.assertj.core.api.Assertions.assertThat;
@@ -40,10 +42,10 @@ public class IssueExclusionsTest {
@ClassRule
public static Orchestrator orchestrator = Category4Suite.ORCHESTRATOR;
- @Before
- public void resetData() {
- orchestrator.resetData();
- }
+ @Rule
+ public Tester tester = new Tester(orchestrator)
+ // all the tests of Category4Suite must disable organizations
+ .disableOrganizations();
@Test
public void should_not_exclude_anything() {
@@ -233,9 +235,12 @@ public class IssueExclusionsTest {
protected BuildResult scan(String... properties) {
ItUtils.restoreProfile(orchestrator, getClass().getResource("/exclusions/IssueExclusionsTest/with-many-rules.xml"));
- orchestrator.getServer().provisionProject("com.sonarsource.it.samples:multi-modules-exclusions",
- "Sonar :: Integration Tests :: Multi-modules With Exclusions");
- orchestrator.getServer().associateProjectToQualityProfile("com.sonarsource.it.samples:multi-modules-exclusions", "xoo", "with-many-rules");
+
+ tester.projects().provision(p -> p
+ .setKey("com.sonarsource.it.samples:multi-modules-exclusions")
+ .setName("Sonar :: Integration Tests :: Multi-modules With Exclusions"));
+ tester.wsClient().qualityProfiles().addProject(AddProjectRequest.builder().setProjectKey("com.sonarsource.it.samples:multi-modules-exclusions")
+ .setLanguage("xoo").setQualityProfile("with-many-rules").build());
SonarScanner scan = SonarScanner.create(ItUtils.projectDir(PROJECT_DIR))
.setProperty("sonar.cpd.exclusions", "**/*")
diff --git a/tests/src/test/java/org/sonarqube/tests/analysis/LinksTest.java b/tests/src/test/java/org/sonarqube/tests/analysis/LinksTest.java
index eb14836b2c1..574dc29c367 100644
--- a/tests/src/test/java/org/sonarqube/tests/analysis/LinksTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/analysis/LinksTest.java
@@ -29,7 +29,7 @@ import java.util.Optional;
import org.junit.After;
import org.junit.ClassRule;
import org.junit.Test;
-import org.sonarqube.ws.WsProjectLinks;
+import org.sonarqube.ws.ProjectLinks;
import org.sonarqube.ws.client.WsClient;
import org.sonarqube.ws.client.projectlinks.SearchWsRequest;
import util.ItUtils;
@@ -75,7 +75,7 @@ public class LinksTest {
private void verifyLinks() {
WsClient wsClient = ItUtils.newWsClient(orchestrator);
- List<WsProjectLinks.Link> links = wsClient.projectLinks().search(new SearchWsRequest().setProjectKey(PROJECT_KEY)).getLinksList();
+ List<ProjectLinks.Link> links = wsClient.projectLinks().search(new SearchWsRequest().setProjectKey(PROJECT_KEY)).getLinksList();
verifyLink(links, "homepage", "http://www.simplesample.org_OVERRIDDEN");
verifyLink(links, "ci", "http://bamboo.ci.codehaus.org/browse/SIMPLESAMPLE");
verifyLink(links, "issue", "http://jira.codehaus.org/browse/SIMPLESAMPLE");
@@ -83,8 +83,8 @@ public class LinksTest {
verifyLink(links, "scm_dev", "scm:git:git@github.com:SonarSource/simplesample.git");
}
- private void verifyLink(List<WsProjectLinks.Link> links, String expectedType, String expectedUrl) {
- Optional<WsProjectLinks.Link> link = links.stream()
+ private void verifyLink(List<ProjectLinks.Link> links, String expectedType, String expectedUrl) {
+ Optional<ProjectLinks.Link> link = links.stream()
.filter(l -> l.getType().equals(expectedType))
.findFirst();
assertThat(link).isPresent();
diff --git a/tests/src/test/java/org/sonarqube/tests/analysis/PermissionTest.java b/tests/src/test/java/org/sonarqube/tests/analysis/PermissionTest.java
index 79663eec478..d0f4eefd4a4 100644
--- a/tests/src/test/java/org/sonarqube/tests/analysis/PermissionTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/analysis/PermissionTest.java
@@ -29,7 +29,7 @@ import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
-import org.sonarqube.ws.WsUserTokens;
+import org.sonarqube.ws.UserTokens;
import org.sonarqube.ws.client.WsClient;
import org.sonarqube.ws.client.permission.AddUserWsRequest;
import org.sonarqube.ws.client.usertoken.GenerateWsRequest;
@@ -79,7 +79,7 @@ public class PermissionTest {
createUserWithProvisioningAndScanPermissions();
String tokenName = "For test";
- WsUserTokens.GenerateWsResponse generateWsResponse = userTokensWsClient.generate(new GenerateWsRequest()
+ UserTokens.GenerateWsResponse generateWsResponse = userTokensWsClient.generate(new GenerateWsRequest()
.setLogin(A_LOGIN)
.setName(tokenName));
SonarScanner sampleProject = SonarScanner.create(projectDir("shared/xoo-sample"));
diff --git a/tests/src/test/java/org/sonarqube/tests/authorization/AuthorizationSuite.java b/tests/src/test/java/org/sonarqube/tests/authorization/AuthorizationSuite.java
index cee2d04936e..12006e700ce 100644
--- a/tests/src/test/java/org/sonarqube/tests/authorization/AuthorizationSuite.java
+++ b/tests/src/test/java/org/sonarqube/tests/authorization/AuthorizationSuite.java
@@ -32,6 +32,7 @@ import static util.ItUtils.xooPlugin;
ExecuteAnalysisPermissionTest.class,
IssuePermissionTest.class,
PermissionSearchTest.class,
+ PermissionTemplatePageTest.class,
ProvisioningPermissionTest.class,
QualityProfileAdminPermissionTest.class,
SystemPasscodeTest.class
diff --git a/tests/src/test/java/org/sonarqube/tests/authorization/PermissionSearchTest.java b/tests/src/test/java/org/sonarqube/tests/authorization/PermissionSearchTest.java
index 703544e337f..f14d2264b71 100644
--- a/tests/src/test/java/org/sonarqube/tests/authorization/PermissionSearchTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/authorization/PermissionSearchTest.java
@@ -26,9 +26,9 @@ import org.junit.ClassRule;
import org.junit.Test;
import org.junit.rules.RuleChain;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsPermissions;
-import org.sonarqube.ws.WsPermissions.Permission;
-import org.sonarqube.ws.WsPermissions.SearchTemplatesWsResponse;
+import org.sonarqube.ws.Permissions;
+import org.sonarqube.ws.Permissions.Permission;
+import org.sonarqube.ws.Permissions.SearchTemplatesWsResponse;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.permission.AddGroupToTemplateWsRequest;
import org.sonarqube.ws.client.permission.AddGroupWsRequest;
@@ -87,17 +87,17 @@ public class PermissionSearchTest {
.setPermission("admin")
.setGroupName(GROUP_NAME));
- WsPermissions.WsSearchGlobalPermissionsResponse searchGlobalPermissionsWsResponse = tester.wsClient().permissions().searchGlobalPermissions();
+ Permissions.WsSearchGlobalPermissionsResponse searchGlobalPermissionsWsResponse = tester.wsClient().permissions().searchGlobalPermissions();
assertThat(searchGlobalPermissionsWsResponse.getPermissionsList().get(0).getKey()).isEqualTo("admin");
assertThat(searchGlobalPermissionsWsResponse.getPermissionsList().get(0).getUsersCount()).isEqualTo(1);
// by default, a group has the global admin permission
assertThat(searchGlobalPermissionsWsResponse.getPermissionsList().get(0).getGroupsCount()).isEqualTo(2);
- WsPermissions.UsersWsResponse users = tester.wsClient().permissions()
+ Permissions.UsersWsResponse users = tester.wsClient().permissions()
.users(new UsersWsRequest().setPermission("admin"));
assertThat(users.getUsersList()).extracting("login").contains(LOGIN);
- WsPermissions.WsGroupsResponse groupsResponse = tester.wsClient().permissions()
+ Permissions.WsGroupsResponse groupsResponse = tester.wsClient().permissions()
.groups(new GroupsWsRequest()
.setPermission("admin"));
assertThat(groupsResponse.getGroupsList()).extracting("name").contains(GROUP_NAME);
@@ -105,7 +105,7 @@ public class PermissionSearchTest {
@Test
public void template_permission_web_services() {
- WsPermissions.CreateTemplateWsResponse createTemplateWsResponse = tester.wsClient().permissions().createTemplate(
+ Permissions.CreateTemplateWsResponse createTemplateWsResponse = tester.wsClient().permissions().createTemplate(
new CreateTemplateWsRequest()
.setName("my-new-template")
.setDescription("template-used-in-tests"));
diff --git a/tests/src/test/java/org/sonarqube/tests/authorization/PermissionTemplatePageTest.java b/tests/src/test/java/org/sonarqube/tests/authorization/PermissionTemplatePageTest.java
new file mode 100644
index 00000000000..8ef4d43e9f9
--- /dev/null
+++ b/tests/src/test/java/org/sonarqube/tests/authorization/PermissionTemplatePageTest.java
@@ -0,0 +1,69 @@
+/*
+ * SonarQube
+ * Copyright (C) 2009-2017 SonarSource SA
+ * mailto:info AT sonarsource DOT com
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ */
+package org.sonarqube.tests.authorization;
+
+import com.sonar.orchestrator.Orchestrator;
+import org.junit.ClassRule;
+import org.junit.Rule;
+import org.junit.Test;
+import org.sonarqube.qa.util.Tester;
+import org.sonarqube.qa.util.pageobjects.ProjectsManagementPage;
+import org.sonarqube.ws.Permissions;
+import org.sonarqube.ws.client.permission.AddUserToTemplateWsRequest;
+import org.sonarqube.ws.client.permission.CreateTemplateWsRequest;
+import org.sonarqube.ws.client.permission.UsersWsRequest;
+
+import static org.assertj.core.api.Assertions.assertThat;
+
+public class PermissionTemplatePageTest {
+
+ @ClassRule
+ public static Orchestrator orchestrator = AuthorizationSuite.ORCHESTRATOR;
+
+ @Rule
+ public Tester tester = new Tester(orchestrator)
+ // all the tests of AuthorizationSuite must disable organizations
+ .disableOrganizations();
+
+ @Test
+ public void bulk_apply_permission_template() {
+ String project = tester.projects().provision().getKey();
+ String userLogin = tester.users().generateMemberOfDefaultOrganization().getLogin();
+ String adminLogin = tester.users().generateAdministratorOnDefaultOrganization().getLogin();
+
+ tester.wsClient().permissions().createTemplate(new CreateTemplateWsRequest().setName("foo-template"));
+ tester.wsClient().permissions().addUserToTemplate(
+ new AddUserToTemplateWsRequest()
+ .setPermission("admin")
+ .setTemplateName("foo-template")
+ .setLogin(userLogin));
+
+ ProjectsManagementPage page = tester.openBrowser().logIn().submitCredentials(adminLogin).openProjectsManagement();
+ page.shouldHaveProject(project);
+ page.bulkApplyPermissionTemplate("foo-template");
+ Permissions.UsersWsResponse usersResponse = tester.wsClient().permissions().users(new UsersWsRequest()
+ .setProjectKey(project)
+ .setPermission("admin")
+ );
+ assertThat(usersResponse.getUsersCount()).isEqualTo(1);
+ assertThat(usersResponse.getUsers(0).getLogin()).isEqualTo(userLogin);
+ }
+
+}
diff --git a/tests/src/test/java/org/sonarqube/tests/authorization/PermissionTemplateTest.java b/tests/src/test/java/org/sonarqube/tests/authorization/PermissionTemplateTest.java
index 66b925d4fc4..a0d4d4c7860 100644
--- a/tests/src/test/java/org/sonarqube/tests/authorization/PermissionTemplateTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/authorization/PermissionTemplateTest.java
@@ -32,10 +32,10 @@ import org.junit.rules.Timeout;
import org.sonarqube.tests.Category6Suite;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.WsPermissions;
-import org.sonarqube.ws.WsPermissions.CreateTemplateWsResponse;
-import org.sonarqube.ws.WsProjects.CreateWsResponse.Project;
-import org.sonarqube.ws.WsUsers.CreateWsResponse;
+import org.sonarqube.ws.Permissions;
+import org.sonarqube.ws.Permissions.CreateTemplateWsResponse;
+import org.sonarqube.ws.Projects.CreateWsResponse.Project;
+import org.sonarqube.ws.Users.CreateWsResponse;
import org.sonarqube.ws.client.WsClient;
import org.sonarqube.ws.client.component.SearchProjectsRequest;
import org.sonarqube.ws.client.permission.AddUserToTemplateWsRequest;
@@ -89,7 +89,7 @@ public class PermissionTemplateTest {
Organization organization = tester.organizations().generate();
CreateWsResponse.User user = tester.users().generateMember(organization);
CreateWsResponse.User anotherUser = tester.users().generateMember(organization);
- WsPermissions.PermissionTemplate template = createTemplate(organization).getPermissionTemplate();
+ Permissions.PermissionTemplate template = createTemplate(organization).getPermissionTemplate();
tester.wsClient().permissions().addUserToTemplate(new AddUserToTemplateWsRequest()
.setOrganization(organization.getKey())
.setTemplateId(template.getId())
@@ -179,7 +179,7 @@ public class PermissionTemplateTest {
}
private Project createPrivateProject(Organization organization) {
- return tester.projects().generate(organization, p -> p.setVisibility("private"));
+ return tester.projects().provision(organization, p -> p.setVisibility("private"));
}
private void assertThatUserHasPermission(CreateWsResponse.User user, Organization organization, Project project) {
@@ -203,8 +203,8 @@ public class PermissionTemplateTest {
.setOrganization(organization.getKey())
.setProjectKey(project.getKey())
.setPermission("user");
- WsPermissions.UsersWsResponse response = tester.wsClient().permissions().users(request);
- Optional<WsPermissions.User> found = response.getUsersList().stream()
+ Permissions.UsersWsResponse response = tester.wsClient().permissions().users(request);
+ Optional<Permissions.User> found = response.getUsersList().stream()
.filter(u -> user.getLogin().equals(u.getLogin()))
.findFirst();
return found.isPresent();
diff --git a/tests/src/test/java/org/sonarqube/tests/authorization/ProvisioningPermissionTest.java b/tests/src/test/java/org/sonarqube/tests/authorization/ProvisioningPermissionTest.java
index 27c5b610d6e..3a9da8f55a0 100644
--- a/tests/src/test/java/org/sonarqube/tests/authorization/ProvisioningPermissionTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/authorization/ProvisioningPermissionTest.java
@@ -26,7 +26,7 @@ import org.junit.ClassRule;
import org.junit.Test;
import org.junit.rules.RuleChain;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsProjects.CreateWsResponse.Project;
+import org.sonarqube.ws.Projects.CreateWsResponse.Project;
import org.sonarqube.ws.client.permission.AddGroupWsRequest;
import org.sonarqube.ws.client.permission.AddUserWsRequest;
import org.sonarqube.ws.client.permission.RemoveGroupWsRequest;
diff --git a/tests/src/test/java/org/sonarqube/tests/ce/CeShutdownTest.java b/tests/src/test/java/org/sonarqube/tests/ce/CeShutdownTest.java
index ab19828ace4..601e98ceb16 100644
--- a/tests/src/test/java/org/sonarqube/tests/ce/CeShutdownTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/ce/CeShutdownTest.java
@@ -33,7 +33,7 @@ import org.junit.rules.TestRule;
import org.junit.rules.Timeout;
import org.sonarqube.qa.util.LogsTailer;
import org.sonarqube.ws.client.WsClient;
-import org.sonarqube.ws.client.ce.ActivityStatusWsRequest;
+import org.sonarqube.ws.client.ce.ActivityStatusRequest;
import util.ItUtils;
import static com.google.common.base.Preconditions.checkState;
@@ -142,7 +142,7 @@ public class CeShutdownTest {
}
int countInProgressTasks() {
- return adminWsClient.ce().activityStatus(ActivityStatusWsRequest.newBuilder().build()).getInProgress();
+ return adminWsClient.ce().activityStatus(new ActivityStatusRequest()).getInProgress();
}
boolean hasTaskFinishedSuccessfully() throws Exception {
diff --git a/tests/src/test/java/org/sonarqube/tests/ce/CeWorkersTest.java b/tests/src/test/java/org/sonarqube/tests/ce/CeWorkersTest.java
index 64d0625e192..25090a55def 100644
--- a/tests/src/test/java/org/sonarqube/tests/ce/CeWorkersTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/ce/CeWorkersTest.java
@@ -45,10 +45,11 @@ import org.junit.BeforeClass;
import org.junit.ClassRule;
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
-import org.sonarqube.ws.WsCe;
+import org.sonarqube.ws.Ce;
+import org.sonarqube.ws.Ce;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.WsClient;
-import org.sonarqube.ws.client.ce.ActivityWsRequest;
+import org.sonarqube.ws.client.ce.ActivityRequest;
import util.ItUtils;
import static com.google.common.collect.ImmutableSet.copyOf;
@@ -129,7 +130,7 @@ public class CeWorkersTest {
waitForEmptyQueue();
- assertThat(adminWsClient.ce().activity(new ActivityWsRequest()
+ assertThat(adminWsClient.ce().activity(new ActivityRequest()
.setType("OOM")
.setStatus(ImmutableList.of("FAILED")))
.getTasksCount())
@@ -139,7 +140,7 @@ public class CeWorkersTest {
waitForEmptyQueue();
- assertThat(adminWsClient.ce().activity(new ActivityWsRequest()
+ assertThat(adminWsClient.ce().activity(new ActivityRequest()
.setType("OK")
.setStatus(ImmutableList.of("SUCCESS")))
.getTasksCount())
@@ -149,7 +150,7 @@ public class CeWorkersTest {
waitForEmptyQueue();
- assertThat(adminWsClient.ce().activity(new ActivityWsRequest()
+ assertThat(adminWsClient.ce().activity(new ActivityRequest()
.setType("ISE")
.setStatus(ImmutableList.of("FAILED")))
.getTasksCount())
@@ -159,7 +160,7 @@ public class CeWorkersTest {
waitForEmptyQueue();
- assertThat(adminWsClient.ce().activity(new ActivityWsRequest()
+ assertThat(adminWsClient.ce().activity(new ActivityRequest()
.setType("OK")
.setStatus(ImmutableList.of("SUCCESS")))
.getTasksCount())
@@ -174,11 +175,11 @@ public class CeWorkersTest {
@Test
public void ce_worker_is_resilient_to_OOM_and_RuntimeException_when_starting_or_stopping_analysis_report_container() throws IOException {
- int initSuccessReportTaskCount = adminWsClient.ce().activity(new ActivityWsRequest()
+ int initSuccessReportTaskCount = adminWsClient.ce().activity(new ActivityRequest()
.setType("REPORT")
.setStatus(ImmutableList.of("SUCCESS")))
.getTasksCount();
- int initFailedReportTaskCount = adminWsClient.ce().activity(new ActivityWsRequest()
+ int initFailedReportTaskCount = adminWsClient.ce().activity(new ActivityRequest()
.setType("REPORT")
.setStatus(ImmutableList.of("FAILED")))
.getTasksCount();
@@ -219,14 +220,14 @@ public class CeWorkersTest {
orchestrator.executeBuild(sonarRunner, true);
// failure while starting components does fail the tasks
- assertThat(adminWsClient.ce().activity(new ActivityWsRequest()
+ assertThat(adminWsClient.ce().activity(new ActivityRequest()
.setType("REPORT")
.setStatus(ImmutableList.of("FAILED")))
.getTasksCount())
.isEqualTo(initFailedReportTaskCount + 2);
// failure while stopping components does not fail the tasks
- assertThat(adminWsClient.ce().activity(new ActivityWsRequest()
+ assertThat(adminWsClient.ce().activity(new ActivityRequest()
.setType("REPORT")
.setStatus(ImmutableList.of("SUCCESS")))
.getTasksCount())
@@ -283,7 +284,7 @@ public class CeWorkersTest {
private void verifyAnalysesRunInParallel(MappedByteBuffer mappedByteBuffer, int workerCount) {
assertThat(adminWsClient.ce().workerCount())
- .extracting(WsCe.WorkerCountResponse::getValue, WsCe.WorkerCountResponse::getCanSetWorkerCount)
+ .extracting(Ce.WorkerCountResponse::getValue, Ce.WorkerCountResponse::getCanSetWorkerCount)
.containsOnly(workerCount, true);
blockAnyAnalysisWithFakeGovernancePlugin(mappedByteBuffer);
@@ -296,18 +297,18 @@ public class CeWorkersTest {
orchestrator.executeBuild(sonarRunner, false);
}
- List<WsCe.Task> tasksList = waitForWsCallStatus(
+ List<Ce.Task> tasksList = waitForWsCallStatus(
this::getTasksAllTasks,
(tasks) -> verifyInProgressTaskCount(tasks, workerCount));
assertThat(tasksList.stream()
.filter(CeWorkersTest::pending)
- .map(WsCe.Task::getComponentKey)
+ .map(Ce.Task::getComponentKey)
.collect(toSet()))
.isEqualTo(copyOf(projectKeys.subList(workerCount, projectKeys.size())));
assertThat(tasksList.stream()
.filter(CeWorkersTest::inProgress)
- .map(WsCe.Task::getComponentKey)
+ .map(Ce.Task::getComponentKey)
.collect(toSet()))
.isEqualTo(copyOf(projectKeys.subList(0, workerCount)));
@@ -336,20 +337,20 @@ public class CeWorkersTest {
}
}
- private static boolean verifyInProgressTaskCount(List<WsCe.Task> tasksList, int workerCount) {
+ private static boolean verifyInProgressTaskCount(List<Ce.Task> tasksList, int workerCount) {
return tasksList.stream().filter(CeWorkersTest::inProgress).count() >= workerCount;
}
- private static boolean pending(WsCe.Task task) {
- return WsCe.TaskStatus.PENDING == task.getStatus();
+ private static boolean pending(Ce.Task task) {
+ return Ce.TaskStatus.PENDING == task.getStatus();
}
- private static boolean inProgress(WsCe.Task task) {
- return WsCe.TaskStatus.IN_PROGRESS == task.getStatus();
+ private static boolean inProgress(Ce.Task task) {
+ return Ce.TaskStatus.IN_PROGRESS == task.getStatus();
}
- private List<WsCe.Task> getTasksAllTasks(WsClient wsClient) {
- return wsClient.ce().activity(new ActivityWsRequest()
+ private List<Ce.Task> getTasksAllTasks(WsClient wsClient) {
+ return wsClient.ce().activity(new ActivityRequest()
.setStatus(ImmutableList.of(STATUS_PENDING, STATUS_IN_PROGRESS)))
.getTasksList();
}
@@ -386,7 +387,7 @@ public class CeWorkersTest {
int tasksCount;
do {
Thread.sleep(delay);
- tasksCount = adminWsClient.ce().activity(new ActivityWsRequest()
+ tasksCount = adminWsClient.ce().activity(new ActivityRequest()
.setStatus(ImmutableList.of("PENDING", "IN_PROGRESS")))
.getTasksCount();
i++;
diff --git a/tests/src/test/java/org/sonarqube/tests/ce/CeWsTest.java b/tests/src/test/java/org/sonarqube/tests/ce/CeWsTest.java
index e6faf6ec58c..aeeac87352e 100644
--- a/tests/src/test/java/org/sonarqube/tests/ce/CeWsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/ce/CeWsTest.java
@@ -22,13 +22,15 @@ package org.sonarqube.tests.ce;
import com.sonar.orchestrator.Orchestrator;
import com.sonar.orchestrator.build.BuildResult;
import com.sonar.orchestrator.build.SonarScanner;
-import org.sonarqube.tests.Category4Suite;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Test;
-import org.sonarqube.ws.WsCe;
+import org.sonarqube.tests.Category4Suite;
+import org.sonarqube.ws.Ce;
+import org.sonarqube.ws.Ce;
import org.sonarqube.ws.client.WsClient;
-import org.sonarqube.ws.client.ce.ActivityWsRequest;
+import org.sonarqube.ws.client.ce.ActivityRequest;
+import org.sonarqube.ws.client.ce.TaskRequest;
import util.ItUtils;
import static com.google.common.collect.Lists.newArrayList;
@@ -52,25 +54,25 @@ public class CeWsTest {
@Test
public void activity() {
- WsCe.ActivityResponse response = wsClient.ce().activity(new ActivityWsRequest()
+ Ce.ActivityResponse response = wsClient.ce().activity(new ActivityRequest()
.setStatus(newArrayList("SUCCESS"))
.setType("REPORT")
- .setOnlyCurrents(true)
- .setPage(1)
- .setPageSize(100));
+ .setOnlyCurrents(String.valueOf(true))
+ .setP(String.valueOf(1))
+ .setPs(String.valueOf(100)));
assertThat(response).isNotNull();
assertThat(response.getTasksCount()).isGreaterThan(0);
- WsCe.Task firstTask = response.getTasks(0);
+ Ce.Task firstTask = response.getTasks(0);
assertThat(firstTask.getId()).isNotEmpty();
}
@Test
public void task() {
- WsCe.TaskResponse taskResponse = wsClient.ce().task(taskUuid);
+ Ce.TaskResponse taskResponse = wsClient.ce().task(new TaskRequest().setId(taskUuid));
assertThat(taskResponse.hasTask()).isTrue();
- WsCe.Task task = taskResponse.getTask();
+ Ce.Task task = taskResponse.getTask();
assertThat(task.getId()).isEqualTo(taskUuid);
assertThat(task.hasErrorMessage()).isFalse();
assertThat(task.hasHasScannerContext()).isTrue();
@@ -79,7 +81,7 @@ public class CeWsTest {
@Test
public void task_types() {
- WsCe.TaskTypesWsResponse response = wsClient.ce().taskTypes();
+ Ce.TaskTypesWsResponse response = wsClient.ce().taskTypes();
assertThat(response).isNotNull();
assertThat(response.getTaskTypesCount()).isGreaterThan(0);
diff --git a/tests/src/test/java/org/sonarqube/tests/ce/ReportFailureNotificationTest.java b/tests/src/test/java/org/sonarqube/tests/ce/ReportFailureNotificationTest.java
index 411c753b9bd..ed6f9c9f82f 100644
--- a/tests/src/test/java/org/sonarqube/tests/ce/ReportFailureNotificationTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/ce/ReportFailureNotificationTest.java
@@ -44,8 +44,8 @@ import org.junit.Test;
import org.sonarqube.tests.Category6Suite;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations;
-import org.sonarqube.ws.WsProjects;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Projects;
+import org.sonarqube.ws.Users;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.WsClient;
import org.sonarqube.ws.client.permission.AddUserWsRequest;
@@ -102,12 +102,12 @@ public class ReportFailureNotificationTest {
@Test
public void send_notification_on_report_processing_failures_to_global_and_project_subscribers() throws Exception {
Organizations.Organization organization = tester.organizations().getDefaultOrganization();
- WsUsers.CreateWsResponse.User user1 = tester.users().generateMember(organization, t -> t.setPassword("user1").setEmail("user1@bar.com"));
- WsUsers.CreateWsResponse.User user2 = tester.users().generateMember(organization, t -> t.setPassword("user2").setEmail("user2@bar.com"));
- WsUsers.CreateWsResponse.User user3 = tester.users().generateMember(organization, t -> t.setPassword("user3").setEmail("user3@bar.com"));
- WsProjects.CreateWsResponse.Project project1 = tester.projects().generate(organization, t -> t.setName("Project1"));
- WsProjects.CreateWsResponse.Project project2 = tester.projects().generate(organization, t -> t.setName("Project2"));
- WsProjects.CreateWsResponse.Project project3 = tester.projects().generate(organization, t -> t.setName("Project3"));
+ Users.CreateWsResponse.User user1 = tester.users().generateMember(organization, t -> t.setPassword("user1").setEmail("user1@bar.com"));
+ Users.CreateWsResponse.User user2 = tester.users().generateMember(organization, t -> t.setPassword("user2").setEmail("user2@bar.com"));
+ Users.CreateWsResponse.User user3 = tester.users().generateMember(organization, t -> t.setPassword("user3").setEmail("user3@bar.com"));
+ Projects.CreateWsResponse.Project project1 = tester.projects().provision(organization, t -> t.setName("Project1"));
+ Projects.CreateWsResponse.Project project2 = tester.projects().provision(organization, t -> t.setName("Project2"));
+ Projects.CreateWsResponse.Project project3 = tester.projects().provision(organization, t -> t.setName("Project3"));
// user 1 is admin of project 1 and will subscribe to global notifications
tester.wsClient().permissions().addUser(new AddUserWsRequest()
.setLogin(user1.getLogin())
@@ -177,7 +177,7 @@ public class ReportFailureNotificationTest {
assertThat(waitForEmails()).isEmpty();
}
- private static void assertSubjectAndContent(WsProjects.CreateWsResponse.Project project, List<MimeMessage> messages) {
+ private static void assertSubjectAndContent(Projects.CreateWsResponse.Project project, List<MimeMessage> messages) {
assertThat(messages.stream().map(toSubject()).collect(Collectors.toSet()))
.containsOnly("[SONARQUBE] " + project.getName() + ": Background task in failure");
Set<String> content = messages.stream().map(toContent()).collect(Collectors.toSet());
@@ -221,7 +221,7 @@ public class ReportFailureNotificationTest {
};
}
- private void subscribeToReportFailures(WsUsers.CreateWsResponse.User user1, String password, @Nullable WsProjects.CreateWsResponse.Project project) {
+ private void subscribeToReportFailures(Users.CreateWsResponse.User user1, String password, @Nullable Projects.CreateWsResponse.Project project) {
WsClient wsClient = newUserWsClient(orchestrator, user1.getLogin(), password);
PostRequest request = new PostRequest("api/notifications/add")
.setParam("type", "CeReportTaskFailure")
@@ -233,7 +233,7 @@ public class ReportFailureNotificationTest {
.failIfNotSuccessful();
}
- private void unsubscribeFromReportFailures(WsUsers.CreateWsResponse.User user1, String password, @Nullable WsProjects.CreateWsResponse.Project project) {
+ private void unsubscribeFromReportFailures(Users.CreateWsResponse.User user1, String password, @Nullable Projects.CreateWsResponse.Project project) {
WsClient wsClient = newUserWsClient(orchestrator, user1.getLogin(), password);
PostRequest request = new PostRequest("api/notifications/remove")
.setParam("type", "CeReportTaskFailure")
@@ -245,7 +245,7 @@ public class ReportFailureNotificationTest {
.failIfNotSuccessful();
}
- private void executeAnalysis(WsProjects.CreateWsResponse.Project project) {
+ private void executeAnalysis(Projects.CreateWsResponse.Project project) {
SonarScanner sonarScanner = SonarScanner.create(projectDir("shared/xoo-sample"),
"sonar.projectKey", project.getKey(),
"sonar.projectName", project.getName());
diff --git a/tests/src/test/java/org/sonarqube/tests/component/BranchTest.java b/tests/src/test/java/org/sonarqube/tests/component/BranchTest.java
index feb667dce65..3d0b3c8ab02 100644
--- a/tests/src/test/java/org/sonarqube/tests/component/BranchTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/component/BranchTest.java
@@ -27,7 +27,7 @@ import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Common;
-import org.sonarqube.ws.WsBranches;
+import org.sonarqube.ws.ProjectBranches;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.WsResponse;
import util.ItUtils;
@@ -47,10 +47,10 @@ public class BranchTest {
public void list_branches_contains_main_branch() {
runProjectAnalysis(orchestrator, "shared/xoo-sample");
- WsBranches.ListWsResponse result = tester.wsClient().projectBranches().list("sample");
+ ProjectBranches.ListWsResponse result = tester.wsClient().projectBranches().list("sample");
assertThat(result.getBranchesList())
- .extracting(WsBranches.Branch::getName, WsBranches.Branch::getType, WsBranches.Branch::getIsMain)
+ .extracting(ProjectBranches.Branch::getName, ProjectBranches.Branch::getType, ProjectBranches.Branch::getIsMain)
.containsExactlyInAnyOrder(Tuple.tuple("master", Common.BranchType.LONG, true));
}
diff --git a/tests/src/test/java/org/sonarqube/tests/component/CodePageTest.java b/tests/src/test/java/org/sonarqube/tests/component/CodePageTest.java
index 1f1b33f5ae6..ef121b74fc6 100644
--- a/tests/src/test/java/org/sonarqube/tests/component/CodePageTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/component/CodePageTest.java
@@ -25,7 +25,7 @@ import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsProjects.CreateWsResponse.Project;
+import org.sonarqube.ws.Projects.CreateWsResponse.Project;
import static util.ItUtils.projectDir;
@@ -39,7 +39,7 @@ public class CodePageTest {
@Test
public void code_page() {
- Project project = tester.projects().generate(null);
+ Project project = tester.projects().provision();
executeAnalysis(project);
tester.openBrowser().openCode(project.getKey())
@@ -64,7 +64,7 @@ public class CodePageTest {
@Test
public void expand_root_dir() {
- Project project = tester.projects().generate(null);
+ Project project = tester.projects().provision();
executeAnalysis(project, "shared/xoo-sample-with-root-dir");
tester.openBrowser().openCode(project.getKey())
diff --git a/tests/src/test/java/org/sonarqube/tests/component/ComponentsWsTest.java b/tests/src/test/java/org/sonarqube/tests/component/ComponentsWsTest.java
index 2e9ccdd7819..81a621d0e05 100644
--- a/tests/src/test/java/org/sonarqube/tests/component/ComponentsWsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/component/ComponentsWsTest.java
@@ -26,7 +26,7 @@ import org.junit.ClassRule;
import org.junit.Test;
import org.junit.rules.RuleChain;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsComponents;
+import org.sonarqube.ws.Components;
import org.sonarqube.ws.client.component.SearchWsRequest;
import org.sonarqube.ws.client.component.ShowWsRequest;
@@ -53,7 +53,7 @@ public class ComponentsWsTest {
@Test
public void show() {
- WsComponents.ShowWsResponse response = tester.wsClient().components().show(new ShowWsRequest().setKey(FILE_KEY));
+ Components.ShowWsResponse response = tester.wsClient().components().show(new ShowWsRequest().setKey(FILE_KEY));
assertThat(response).isNotNull();
assertThat(response.getComponent().getKey()).isEqualTo(FILE_KEY);
@@ -62,7 +62,7 @@ public class ComponentsWsTest {
@Test
public void search() {
- WsComponents.SearchWsResponse response = tester.wsClient().components().search(new SearchWsRequest()
+ Components.SearchWsResponse response = tester.wsClient().components().search(new SearchWsRequest()
.setQualifiers(singletonList("FIL")));
assertThat(response).isNotNull();
diff --git a/tests/src/test/java/org/sonarqube/tests/duplication/NewDuplicationsTest.java b/tests/src/test/java/org/sonarqube/tests/duplication/NewDuplicationsTest.java
index 76b6a277a55..9e8d41bf9a1 100644
--- a/tests/src/test/java/org/sonarqube/tests/duplication/NewDuplicationsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/duplication/NewDuplicationsTest.java
@@ -27,7 +27,7 @@ import org.junit.ClassRule;
import org.junit.Test;
import org.junit.rules.RuleChain;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsMeasures;
+import org.sonarqube.ws.Measures;
import static java.lang.Double.parseDouble;
import static org.assertj.core.api.Assertions.assertThat;
@@ -57,7 +57,7 @@ public class NewDuplicationsTest {
@Test
public void new_duplications_on_project() throws Exception {
- Map<String, WsMeasures.Measure> measures = getMeasures("new-duplications");
+ Map<String, Measures.Measure> measures = getMeasures("new-duplications");
assertThat(parseDouble(measures.get("new_lines").getPeriods().getPeriodsValue(0).getValue())).isEqualTo(83d, DEFAULT_OFFSET);
assertThat(parseDouble(measures.get("new_duplicated_lines").getPeriods().getPeriodsValue(0).getValue())).isEqualTo(71d, DEFAULT_OFFSET);
assertThat(parseDouble(measures.get("new_duplicated_lines_density").getPeriods().getPeriodsValue(0).getValue())).isEqualTo(85.5d, DEFAULT_OFFSET);
@@ -66,7 +66,7 @@ public class NewDuplicationsTest {
@Test
public void new_duplications_on_directory() throws Exception {
- Map<String, WsMeasures.Measure> measures = getMeasures("new-duplications:src/main/xoo/duplicated_lines_with_other_dir1");
+ Map<String, Measures.Measure> measures = getMeasures("new-duplications:src/main/xoo/duplicated_lines_with_other_dir1");
assertThat(parseDouble(measures.get("new_lines").getPeriods().getPeriodsValue(0).getValue())).isEqualTo(24d, DEFAULT_OFFSET);
assertThat(parseDouble(measures.get("new_duplicated_lines").getPeriods().getPeriodsValue(0).getValue())).isEqualTo(24d, DEFAULT_OFFSET);
assertThat(parseDouble(measures.get("new_duplicated_lines_density").getPeriods().getPeriodsValue(0).getValue())).isEqualTo(100d, DEFAULT_OFFSET);
@@ -75,14 +75,14 @@ public class NewDuplicationsTest {
@Test
public void new_duplications_on_file() throws Exception {
- Map<String, WsMeasures.Measure> measures = getMeasures("new-duplications:src/main/xoo/duplicated_lines_within_same_file/DuplicatedLinesInSameFile.xoo");
+ Map<String, Measures.Measure> measures = getMeasures("new-duplications:src/main/xoo/duplicated_lines_within_same_file/DuplicatedLinesInSameFile.xoo");
assertThat(parseDouble(measures.get("new_lines").getPeriods().getPeriodsValue(0).getValue())).isEqualTo(41d, DEFAULT_OFFSET);
assertThat(parseDouble(measures.get("new_duplicated_lines").getPeriods().getPeriodsValue(0).getValue())).isEqualTo(29d, DEFAULT_OFFSET);
assertThat(parseDouble(measures.get("new_duplicated_lines_density").getPeriods().getPeriodsValue(0).getValue())).isEqualTo(70.7d, DEFAULT_OFFSET);
assertThat(parseDouble(measures.get("new_duplicated_blocks").getPeriods().getPeriodsValue(0).getValue())).isEqualTo(2d, DEFAULT_OFFSET);
}
- private static Map<String, WsMeasures.Measure> getMeasures(String key) {
+ private static Map<String, Measures.Measure> getMeasures(String key) {
return getMeasuresWithVariationsByMetricKey(orchestrator, key, "new_lines", "new_duplicated_lines", "new_duplicated_lines_density", "new_duplicated_blocks");
}
}
diff --git a/tests/src/test/java/org/sonarqube/tests/issue/AutoAssignTest.java b/tests/src/test/java/org/sonarqube/tests/issue/AutoAssignTest.java
index d3b76382b4f..89d0628ca73 100644
--- a/tests/src/test/java/org/sonarqube/tests/issue/AutoAssignTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/issue/AutoAssignTest.java
@@ -30,7 +30,7 @@ import org.junit.Rule;
import org.junit.Test;
import org.sonar.wsclient.issue.Issue;
import org.sonar.wsclient.issue.IssueQuery;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Users;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.WsClient;
import org.sonarqube.ws.client.user.CreateRequest;
@@ -191,7 +191,7 @@ public class AutoAssignTest extends AbstractIssueTest {
private static void deleteAllUsers() {
WsClient wsClient = newAdminWsClient(ORCHESTRATOR);
- WsUsers.SearchWsResponse searchResponse = wsClient.users().search(SearchRequest.builder().build());
+ Users.SearchWsResponse searchResponse = wsClient.users().search(SearchRequest.builder().build());
searchResponse.getUsersList().forEach(user -> {
wsClient.wsConnector().call(new PostRequest("api/users/deactivate").setParam("login", user.getLogin()));
});
diff --git a/tests/src/test/java/org/sonarqube/tests/issue/IssueNotificationsTest.java b/tests/src/test/java/org/sonarqube/tests/issue/IssueNotificationsTest.java
index fbeeb637d60..b5bcef07954 100644
--- a/tests/src/test/java/org/sonarqube/tests/issue/IssueNotificationsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/issue/IssueNotificationsTest.java
@@ -44,10 +44,10 @@ import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Issues.Issue;
import org.sonarqube.ws.Issues.SearchWsResponse;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.QualityProfiles;
-import org.sonarqube.ws.WsProjects.CreateWsResponse.Project;
-import org.sonarqube.ws.WsUsers;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Qualityprofiles;
+import org.sonarqube.ws.Projects.CreateWsResponse.Project;
+import org.sonarqube.ws.Users;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.WsClient;
import org.sonarqube.ws.client.issue.AssignRequest;
@@ -289,8 +289,8 @@ public class IssueNotificationsTest {
private void createSampleProject(String visibility) {
// Create project
- QualityProfiles.CreateWsResponse.QualityProfile profile = tester.qProfiles().createXooProfile(organization);
- Project project = tester.projects().generate(organization, p -> p.setKey(PROJECT_KEY)
+ Qualityprofiles.CreateWsResponse.QualityProfile profile = tester.qProfiles().createXooProfile(organization);
+ Project project = tester.projects().provision(organization, p -> p.setKey(PROJECT_KEY)
.setName("Sample")
.setVisibility(visibility));
tester.qProfiles()
@@ -387,7 +387,7 @@ public class IssueNotificationsTest {
}).collect(Collectors.toList());
}
- private void addNotificationsTo(WsUsers.CreateWsResponse.User user) {
+ private void addNotificationsTo(Users.CreateWsResponse.User user) {
// Add notifications to the test user
WsClient wsClient = tester.as(user.getLogin()).wsClient();
wsClient.wsConnector().call(new PostRequest("api/notifications/add")
diff --git a/tests/src/test/java/org/sonarqube/tests/issue/IssueTagsTest.java b/tests/src/test/java/org/sonarqube/tests/issue/IssueTagsTest.java
index c44fcafaf73..e802dc945ac 100644
--- a/tests/src/test/java/org/sonarqube/tests/issue/IssueTagsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/issue/IssueTagsTest.java
@@ -31,7 +31,7 @@ import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.issue.SearchWsRequest;
import org.sonarqube.ws.client.permission.AddUserWsRequest;
import org.sonarqube.ws.client.project.CreateRequest;
diff --git a/tests/src/test/java/org/sonarqube/tests/issue/NewIssuesMeasureTest.java b/tests/src/test/java/org/sonarqube/tests/issue/NewIssuesMeasureTest.java
index 7b6c4c79f9f..d9df5202424 100644
--- a/tests/src/test/java/org/sonarqube/tests/issue/NewIssuesMeasureTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/issue/NewIssuesMeasureTest.java
@@ -25,8 +25,8 @@ import org.junit.AfterClass;
import org.junit.Before;
import org.junit.Test;
import org.sonar.wsclient.issue.IssueQuery;
-import org.sonarqube.ws.WsMeasures;
-import org.sonarqube.ws.WsMeasures.Measure;
+import org.sonarqube.ws.Measures;
+import org.sonarqube.ws.Measures.Measure;
import util.ItUtils;
import static java.lang.Integer.parseInt;
@@ -111,7 +111,7 @@ public class NewIssuesMeasureTest extends AbstractIssueTest {
assertThat(ORCHESTRATOR.getServer().wsClient().issueClient().find(IssueQuery.create()).list()).isNotEmpty();
Map<String, Measure> measures = getMeasuresWithVariationsByMetricKey(ORCHESTRATOR, "sample", "new_violations", "violations", "ncloc");
- assertThat(measures.get("new_violations").getPeriods().getPeriodsValueList()).extracting(WsMeasures.PeriodValue::getValue).containsOnly("17");
+ assertThat(measures.get("new_violations").getPeriods().getPeriodsValueList()).extracting(Measures.PeriodValue::getValue).containsOnly("17");
Measure violations = measures.get("violations");
assertThat(parseInt(violations.getValue())).isEqualTo(43);
diff --git a/tests/src/test/java/org/sonarqube/tests/issue/OrganizationIssueAssignTest.java b/tests/src/test/java/org/sonarqube/tests/issue/OrganizationIssueAssignTest.java
index 8ca101b9fee..db359df1056 100644
--- a/tests/src/test/java/org/sonarqube/tests/issue/OrganizationIssueAssignTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/issue/OrganizationIssueAssignTest.java
@@ -32,7 +32,7 @@ import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Issues;
import org.sonarqube.ws.Issues.Issue;
import org.sonarqube.ws.Organizations;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.issue.AssignRequest;
import org.sonarqube.ws.client.issue.BulkChangeRequest;
import org.sonarqube.ws.client.issue.SearchWsRequest;
diff --git a/tests/src/test/java/org/sonarqube/tests/issue/OrganizationIssuesPageTest.java b/tests/src/test/java/org/sonarqube/tests/issue/OrganizationIssuesPageTest.java
index 13e7c26f8c3..c7feefc3a58 100644
--- a/tests/src/test/java/org/sonarqube/tests/issue/OrganizationIssuesPageTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/issue/OrganizationIssuesPageTest.java
@@ -29,7 +29,7 @@ import org.sonarqube.qa.util.pageobjects.Navigation;
import org.sonarqube.tests.Category6Suite;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Users;
import util.issue.IssueRule;
import static util.ItUtils.restoreProfile;
@@ -48,8 +48,8 @@ public class OrganizationIssuesPageTest {
private Organizations.Organization org1;
private Organizations.Organization org2;
- private WsUsers.CreateWsResponse.User user1;
- private WsUsers.CreateWsResponse.User user2;
+ private Users.CreateWsResponse.User user1;
+ private Users.CreateWsResponse.User user2;
@Before
public void setUp() throws Exception {
@@ -81,7 +81,7 @@ public class OrganizationIssuesPageTest {
}
private String provisionProject(Organizations.Organization organization) {
- return tester.projects().generate(organization).getKey();
+ return tester.projects().provision(organization).getKey();
}
private void analyseProject(String projectKey, String organization) {
diff --git a/tests/src/test/java/org/sonarqube/tests/lite/LiteTest.java b/tests/src/test/java/org/sonarqube/tests/lite/LiteTest.java
index d1acdb65188..66245b7259e 100644
--- a/tests/src/test/java/org/sonarqube/tests/lite/LiteTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/lite/LiteTest.java
@@ -26,8 +26,8 @@ import org.junit.Test;
import org.junit.rules.RuleChain;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Issues;
-import org.sonarqube.ws.WsComponents;
-import org.sonarqube.ws.WsMeasures;
+import org.sonarqube.ws.Components;
+import org.sonarqube.ws.Measures;
import org.sonarqube.ws.client.component.TreeWsRequest;
import org.sonarqube.ws.client.issue.IssuesService;
import org.sonarqube.ws.client.issue.SearchWsRequest;
@@ -75,7 +75,7 @@ public class LiteTest {
@Test
public void call_components_ws() {
// files in project
- WsComponents.TreeWsResponse tree = tester.wsClient().components().tree(new TreeWsRequest()
+ Components.TreeWsResponse tree = tester.wsClient().components().tree(new TreeWsRequest()
.setBaseComponentKey(PROJECT_KEY)
.setQualifiers(singletonList("FIL")));
assertThat(tree.getComponentsCount()).isEqualTo(4);
@@ -89,13 +89,13 @@ public class LiteTest {
public void call_measures_ws() {
// project measures
MeasuresService measuresService = tester.wsClient().measures();
- WsMeasures.ComponentWsResponse component = measuresService.component(new ComponentWsRequest()
+ Measures.ComponentWsResponse component = measuresService.component(new ComponentWsRequest()
.setComponentKey(PROJECT_KEY)
.setMetricKeys(asList("lines", "ncloc", "files")));
assertThat(component.getComponent().getMeasuresCount()).isEqualTo(3);
// file measures
- WsMeasures.ComponentTreeWsResponse tree = measuresService.componentTree(new ComponentTreeWsRequest()
+ Measures.ComponentTreeWsResponse tree = measuresService.componentTree(new ComponentTreeWsRequest()
.setBaseComponentKey(PROJECT_KEY)
.setQualifiers(singletonList("FIL"))
.setMetricKeys(asList("lines", "ncloc")));
diff --git a/tests/src/test/java/org/sonarqube/tests/measure/MeasuresWsTest.java b/tests/src/test/java/org/sonarqube/tests/measure/MeasuresWsTest.java
index e7718f11b36..e83ab8f5c8a 100644
--- a/tests/src/test/java/org/sonarqube/tests/measure/MeasuresWsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/measure/MeasuresWsTest.java
@@ -27,9 +27,9 @@ import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsMeasures;
-import org.sonarqube.ws.WsMeasures.ComponentTreeWsResponse;
-import org.sonarqube.ws.WsMeasures.ComponentWsResponse;
+import org.sonarqube.ws.Measures;
+import org.sonarqube.ws.Measures.ComponentTreeWsResponse;
+import org.sonarqube.ws.Measures.ComponentWsResponse;
import org.sonarqube.ws.client.measure.ComponentTreeWsRequest;
import org.sonarqube.ws.client.measure.ComponentWsRequest;
@@ -67,7 +67,7 @@ public class MeasuresWsTest {
assertThat(response).isNotNull();
assertThat(response.getBaseComponent().getKey()).isEqualTo("sample");
assertThat(response.getMetrics().getMetricsList()).extracting("key").containsOnly("ncloc");
- List<WsMeasures.Component> components = response.getComponentsList();
+ List<Measures.Component> components = response.getComponentsList();
assertThat(components).hasSize(2).extracting("key").containsOnly(DIR_KEY, FILE_KEY);
assertThat(components.get(0).getMeasuresList().get(0).getValue()).isEqualTo("13");
}
@@ -142,7 +142,7 @@ public class MeasuresWsTest {
.setMetricKeys(singletonList("ncloc"))
.setAdditionalFields(newArrayList("metrics", "periods")));
- WsMeasures.Component component = response.getComponent();
+ Measures.Component component = response.getComponent();
assertThat(component.getKey()).isEqualTo("sample");
assertThat(component.getMeasuresList()).isNotEmpty();
assertThat(response.getMetrics().getMetricsList()).extracting("key").containsOnly("ncloc");
diff --git a/tests/src/test/java/org/sonarqube/tests/measure/SincePreviousVersionHistoryTest.java b/tests/src/test/java/org/sonarqube/tests/measure/SincePreviousVersionHistoryTest.java
index dede45c53ae..b73d878d87f 100644
--- a/tests/src/test/java/org/sonarqube/tests/measure/SincePreviousVersionHistoryTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/measure/SincePreviousVersionHistoryTest.java
@@ -33,8 +33,8 @@ import org.sonarqube.qa.util.Tester;
import static java.lang.Integer.parseInt;
import static org.assertj.core.api.Assertions.assertThat;
-import static org.sonarqube.ws.WsMeasures.Measure;
-import static org.sonarqube.ws.WsMeasures.PeriodValue;
+import static org.sonarqube.ws.Measures.Measure;
+import static org.sonarqube.ws.Measures.PeriodValue;
import static util.ItUtils.getLeakPeriodValue;
import static util.ItUtils.getMeasureWithVariation;
import static util.ItUtils.projectDir;
diff --git a/tests/src/test/java/org/sonarqube/tests/measure/SinceXDaysHistoryTest.java b/tests/src/test/java/org/sonarqube/tests/measure/SinceXDaysHistoryTest.java
index c030f301e0b..93869338c12 100644
--- a/tests/src/test/java/org/sonarqube/tests/measure/SinceXDaysHistoryTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/measure/SinceXDaysHistoryTest.java
@@ -30,7 +30,7 @@ import org.junit.ClassRule;
import org.junit.Test;
import org.junit.rules.RuleChain;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsMeasures;
+import org.sonarqube.ws.Measures;
import util.ItUtils;
import static java.lang.Integer.parseInt;
@@ -87,7 +87,7 @@ public class SinceXDaysHistoryTest {
}
private void checkMeasure(String metric, int variation) {
- WsMeasures.Measure measure = getMeasureWithVariation(orchestrator, PROJECT, metric);
+ Measures.Measure measure = getMeasureWithVariation(orchestrator, PROJECT, metric);
assertThat(measure.getPeriods().getPeriodsValueList()).extracting(periodValue -> parseInt(periodValue.getValue())).containsOnly(variation);
}
diff --git a/tests/src/test/java/org/sonarqube/tests/measure/TimeMachineTest.java b/tests/src/test/java/org/sonarqube/tests/measure/TimeMachineTest.java
index 34b9f0dbc18..41ed941920c 100644
--- a/tests/src/test/java/org/sonarqube/tests/measure/TimeMachineTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/measure/TimeMachineTest.java
@@ -29,9 +29,9 @@ import org.junit.ClassRule;
import org.junit.Test;
import org.junit.rules.RuleChain;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsMeasures.Measure;
-import org.sonarqube.ws.WsMeasures.SearchHistoryResponse;
-import org.sonarqube.ws.WsMeasures.SearchHistoryResponse.HistoryValue;
+import org.sonarqube.ws.Measures.Measure;
+import org.sonarqube.ws.Measures.SearchHistoryResponse;
+import org.sonarqube.ws.Measures.SearchHistoryResponse.HistoryValue;
import org.sonarqube.ws.client.measure.SearchHistoryRequest;
import util.ItUtils;
import util.ItUtils.ComponentNavigation;
diff --git a/tests/src/test/java/org/sonarqube/tests/organization/BillingTest.java b/tests/src/test/java/org/sonarqube/tests/organization/BillingTest.java
index 911305356e2..33c6de854b8 100644
--- a/tests/src/test/java/org/sonarqube/tests/organization/BillingTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/organization/BillingTest.java
@@ -30,9 +30,10 @@ import org.junit.Test;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.qa.util.pageobjects.Navigation;
import org.sonarqube.ws.Organizations;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.WsResponse;
+import org.sonarqube.ws.client.ce.TaskRequest;
import org.sonarqube.ws.client.organization.UpdateProjectVisibilityWsRequest;
import org.sonarqube.ws.client.project.CreateRequest;
import org.sonarqube.ws.client.project.UpdateVisibilityRequest;
@@ -40,7 +41,7 @@ import util.ItUtils;
import static java.lang.String.format;
import static org.assertj.core.api.Assertions.assertThat;
-import static org.sonarqube.ws.WsCe.TaskResponse;
+import static org.sonarqube.ws.Ce.TaskResponse;
import static util.ItUtils.expectHttpError;
import static util.ItUtils.newProjectKey;
import static util.ItUtils.projectDir;
@@ -76,7 +77,7 @@ public class BillingTest {
String taskUuid = executeAnalysis(newProjectKey());
- TaskResponse taskResponse = tester.wsClient().ce().task(taskUuid);
+ TaskResponse taskResponse = tester.wsClient().ce().task(new TaskRequest().setId(taskUuid));
assertThat(taskResponse.getTask().hasErrorMessage()).isFalse();
}
@@ -86,7 +87,7 @@ public class BillingTest {
String taskUuid = executeAnalysis(newProjectKey());
- TaskResponse taskResponse = tester.wsClient().ce().task(taskUuid);
+ TaskResponse taskResponse = tester.wsClient().ce().task(new TaskRequest().setId(taskUuid));
assertThat(taskResponse.getTask().hasErrorMessage()).isTrue();
assertThat(taskResponse.getTask().getErrorMessage()).contains(format("Organization %s cannot perform analysis", organization.getKey()));
}
@@ -211,7 +212,7 @@ public class BillingTest {
}
private String createPublicProject() {
- return tester.projects().generate(organization).getKey();
+ return tester.projects().provision(organization).getKey();
}
private String executeAnalysis(String projectKey) {
diff --git a/tests/src/test/java/org/sonarqube/tests/organization/OrganizationMembershipTest.java b/tests/src/test/java/org/sonarqube/tests/organization/OrganizationMembershipTest.java
index 7968fe4d50a..2b738c24afd 100644
--- a/tests/src/test/java/org/sonarqube/tests/organization/OrganizationMembershipTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/organization/OrganizationMembershipTest.java
@@ -29,7 +29,7 @@ import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.HttpException;
import org.sonarqube.ws.client.permission.AddUserWsRequest;
diff --git a/tests/src/test/java/org/sonarqube/tests/organization/OrganizationMembershipUiTest.java b/tests/src/test/java/org/sonarqube/tests/organization/OrganizationMembershipUiTest.java
index 36064dd20f3..e909fd2d810 100644
--- a/tests/src/test/java/org/sonarqube/tests/organization/OrganizationMembershipUiTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/organization/OrganizationMembershipUiTest.java
@@ -29,7 +29,7 @@ import org.junit.Test;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.qa.util.pageobjects.organization.MembersPage;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
public class OrganizationMembershipUiTest {
diff --git a/tests/src/test/java/org/sonarqube/tests/organization/OrganizationTest.java b/tests/src/test/java/org/sonarqube/tests/organization/OrganizationTest.java
index 158516a3ff9..fbf6725f48f 100644
--- a/tests/src/test/java/org/sonarqube/tests/organization/OrganizationTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/organization/OrganizationTest.java
@@ -27,16 +27,15 @@ import org.junit.After;
import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
-import org.junit.rules.ExpectedException;
import org.sonarqube.qa.util.OrganizationTester;
import org.sonarqube.qa.util.Tester;
+import org.sonarqube.ws.Components;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.QualityProfiles;
+import org.sonarqube.ws.Qualityprofiles;
import org.sonarqube.ws.Rules;
-import org.sonarqube.ws.WsComponents;
-import org.sonarqube.ws.WsUserGroups.Group;
-import org.sonarqube.ws.WsUsers;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.UserGroups.Group;
+import org.sonarqube.ws.Users;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.component.ComponentsService;
import org.sonarqube.ws.client.organization.CreateWsRequest;
import org.sonarqube.ws.client.organization.OrganizationService;
@@ -53,28 +52,25 @@ import static util.ItUtils.expectForbiddenError;
import static util.ItUtils.expectNotFoundError;
import static util.ItUtils.expectUnauthorizedError;
import static util.ItUtils.runProjectAnalysis;
-import static util.ItUtils.setServerProperty;
public class OrganizationTest {
private static final String SETTING_ANYONE_CAN_CREATE_ORGANIZATIONS = "sonar.organizations.anyoneCanCreate";
private static final String DEFAULT_ORGANIZATION_KEY = "default-organization";
private static final String NAME = "Foo Company";
- // private static final String KEY = "foo-company";
private static final String DESCRIPTION = "the description of Foo company";
private static final String URL = "https://www.foo.fr";
private static final String AVATAR_URL = "https://www.foo.fr/corporate_logo.png";
@ClassRule
public static Orchestrator orchestrator = OrganizationSuite.ORCHESTRATOR;
+
@Rule
public Tester tester = new Tester(orchestrator);
- @Rule
- public ExpectedException expectedException = ExpectedException.none();
@After
public void tearDown() {
- setServerProperty(orchestrator, SETTING_ANYONE_CAN_CREATE_ORGANIZATIONS, null);
+ tester.settings().resetSettings(SETTING_ANYONE_CAN_CREATE_ORGANIZATIONS);
}
@Test
@@ -272,22 +268,22 @@ public class OrganizationTest {
Group group = tester.groups().generate(organization);
tester.groups().addMemberToGroups(organization, user.getLogin(), group.getName());
- List<WsUsers.GroupsWsResponse.Group> memberOfGroups = tester.groups().getGroupsOfUser(organization, user.getLogin());
+ List<Users.GroupsWsResponse.Group> memberOfGroups = tester.groups().getGroupsOfUser(organization, user.getLogin());
- assertThat(memberOfGroups).extracting(WsUsers.GroupsWsResponse.Group::getName)
+ assertThat(memberOfGroups).extracting(Users.GroupsWsResponse.Group::getName)
.containsExactlyInAnyOrder(group.getName(), "Members");
}
@Test
public void anonymous_cannot_create_organizations_even_if_anyone_is_allowed_to() {
- setServerProperty(orchestrator, SETTING_ANYONE_CAN_CREATE_ORGANIZATIONS, "true");
+ tester.settings().setGlobalSettings(SETTING_ANYONE_CAN_CREATE_ORGANIZATIONS, "true");
expectUnauthorizedError(() -> tester.asAnonymous().organizations().generate());
}
@Test
public void logged_in_user_can_create_organizations_if_anyone_is_allowed_to() {
- setServerProperty(orchestrator, SETTING_ANYONE_CAN_CREATE_ORGANIZATIONS, "true");
+ tester.settings().setGlobalSettings(SETTING_ANYONE_CAN_CREATE_ORGANIZATIONS, "true");
User user = tester.users().generate();
Organization organization = tester.as(user.getLogin()).organizations().generate();
@@ -302,7 +298,7 @@ public class OrganizationTest {
.hasSize(1);
}
- private WsComponents.SearchWsResponse searchSampleProject(String organizationKey, ComponentsService componentsService) {
+ private Components.SearchWsResponse searchSampleProject(String organizationKey, ComponentsService componentsService) {
return componentsService
.search(new org.sonarqube.ws.client.component.SearchWsRequest()
.setOrganization(organizationKey)
@@ -316,7 +312,7 @@ public class OrganizationTest {
}
private void verifyOrganization(Organization createdOrganization, String name, String description, String url,
- String avatarUrl) {
+ String avatarUrl) {
SearchWsRequest request = new SearchWsRequest.Builder().setOrganizations(createdOrganization.getKey()).build();
List<Organization> result = tester.organizations().service().search(request).getOrganizationsList();
assertThat(result).hasSize(1);
@@ -343,7 +339,7 @@ public class OrganizationTest {
private void assertThatBuiltInQualityProfilesExist(Organization org) {
org.sonarqube.ws.client.qualityprofile.SearchWsRequest profilesRequest = new org.sonarqube.ws.client.qualityprofile.SearchWsRequest()
.setOrganizationKey(org.getKey());
- QualityProfiles.SearchWsResponse response = tester.wsClient().qualityProfiles().search(profilesRequest);
+ Qualityprofiles.SearchWsResponse response = tester.wsClient().qualityProfiles().search(profilesRequest);
assertThat(response.getProfilesCount()).isGreaterThan(0);
response.getProfilesList().forEach(p -> {
diff --git a/tests/src/test/java/org/sonarqube/tests/organization/OrganizationWebExtensionsTest.java b/tests/src/test/java/org/sonarqube/tests/organization/OrganizationWebExtensionsTest.java
index 6387a8ee001..f0722be9f33 100644
--- a/tests/src/test/java/org/sonarqube/tests/organization/OrganizationWebExtensionsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/organization/OrganizationWebExtensionsTest.java
@@ -27,7 +27,7 @@ import org.junit.Test;
import org.openqa.selenium.By;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import static com.codeborne.selenide.Condition.text;
import static com.codeborne.selenide.Selenide.$;
diff --git a/tests/src/test/java/org/sonarqube/tests/organization/PersonalOrganizationTest.java b/tests/src/test/java/org/sonarqube/tests/organization/PersonalOrganizationTest.java
index 5c421aaf580..a31f889a890 100644
--- a/tests/src/test/java/org/sonarqube/tests/organization/PersonalOrganizationTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/organization/PersonalOrganizationTest.java
@@ -22,18 +22,16 @@ package org.sonarqube.tests.organization;
import com.sonar.orchestrator.Orchestrator;
import java.util.List;
-import org.junit.After;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Users;
import org.sonarqube.ws.client.organization.SearchWsRequest;
import static org.assertj.core.api.Assertions.assertThat;
-import static util.ItUtils.setServerProperty;
public class PersonalOrganizationTest {
@@ -47,21 +45,16 @@ public class PersonalOrganizationTest {
@Before
public void setUp() {
- setServerProperty(orchestrator, SETTING_CREATE_PERSONAL_ORG, "true");
- }
-
- @After
- public void tearDown() {
- setServerProperty(orchestrator, SETTING_CREATE_PERSONAL_ORG, null);
+ tester.settings().setGlobalSettings(SETTING_CREATE_PERSONAL_ORG, "true");
}
@Test
public void personal_organizations_are_created_for_new_users() {
- WsUsers.CreateWsResponse.User user = tester.users().generate();
+ Users.CreateWsResponse.User user = tester.users().generate();
List<Organizations.Organization> existing = tester.wsClient().organizations().search(SearchWsRequest.builder().build()).getOrganizationsList();
assertThat(existing)
- .filteredOn(o -> o.getGuarded())
+ .filteredOn(Organizations.Organization::getGuarded)
.filteredOn(o -> o.getKey().equals(user.getLogin()))
.hasSize(1)
.matches(l -> l.get(0).getName().equals(user.getName()));
diff --git a/tests/src/test/java/org/sonarqube/tests/organization/RootUserTest.java b/tests/src/test/java/org/sonarqube/tests/organization/RootUserTest.java
index 2a7d0d3f8bc..18451b12339 100644
--- a/tests/src/test/java/org/sonarqube/tests/organization/RootUserTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/organization/RootUserTest.java
@@ -26,8 +26,8 @@ import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.qa.util.TesterSession;
-import org.sonarqube.ws.WsRoot;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Root;
+import org.sonarqube.ws.Users;
import util.user.UserRule;
import static org.assertj.core.api.Assertions.assertThat;
@@ -45,17 +45,17 @@ public class RootUserTest {
@Test
public void system_administrator_is_flagged_as_root_when_he_enables_organization_support() {
assertThat(tester.wsClient().roots().search().getRootsList())
- .extracting(WsRoot.Root::getLogin)
+ .extracting(Root.RootContent::getLogin)
.containsExactly(UserRule.ADMIN_LOGIN);
}
@Test
public void a_root_can_flag_other_user_as_root() {
- WsUsers.CreateWsResponse.User user = tester.users().generate();
+ Users.CreateWsResponse.User user = tester.users().generate();
tester.wsClient().roots().setRoot(user.getLogin());
assertThat(tester.wsClient().roots().search().getRootsList())
- .extracting(WsRoot.Root::getLogin)
+ .extracting(Root.RootContent::getLogin)
.containsExactlyInAnyOrder(UserRule.ADMIN_LOGIN, user.getLogin());
}
@@ -66,8 +66,8 @@ public class RootUserTest {
@Test
public void root_can_be_set_and_unset_via_web_services() {
- WsUsers.CreateWsResponse.User user1 = tester.users().generate();
- WsUsers.CreateWsResponse.User user2 = tester.users().generate();
+ Users.CreateWsResponse.User user1 = tester.users().generate();
+ Users.CreateWsResponse.User user2 = tester.users().generate();
TesterSession user1Session = tester.as(user1.getLogin());
TesterSession user2Session = tester.as(user2.getLogin());
diff --git a/tests/src/test/java/org/sonarqube/tests/performance/AbstractPerfTest.java b/tests/src/test/java/org/sonarqube/tests/performance/AbstractPerfTest.java
index 67f05db0964..7d3bc262e16 100644
--- a/tests/src/test/java/org/sonarqube/tests/performance/AbstractPerfTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/performance/AbstractPerfTest.java
@@ -27,9 +27,7 @@ import java.io.IOException;
import java.util.Properties;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.IOUtils;
-import org.hamcrest.CustomMatcher;
import org.junit.Rule;
-import org.junit.rules.ErrorCollector;
import org.junit.rules.TestName;
import static org.assertj.core.api.Assertions.assertThat;
@@ -46,34 +44,11 @@ public abstract class AbstractPerfTest {
assertThat(Math.abs(variation)).as(String.format("Expected %d ms, got %d ms", expectedDuration, duration)).isLessThan(ACCEPTED_DURATION_VARIATION_IN_PERCENTS);
}
- protected void assertDurationAround(ErrorCollector collector, long duration, long expectedDuration) {
- double variation = 100.0 * (0.0 + duration - expectedDuration) / expectedDuration;
- System.out.printf("Test %s : executed in %d ms (%.2f %% from target)\n", testName.getMethodName(), duration, variation);
- collector.checkThat(String.format("Expected %d ms, got %d ms", expectedDuration, duration), Math.abs(variation), new CustomMatcher<Double>("a value less than "
- + ACCEPTED_DURATION_VARIATION_IN_PERCENTS) {
- @Override
- public boolean matches(Object item) {
- return ((item instanceof Double) && ((Double) item).compareTo(ACCEPTED_DURATION_VARIATION_IN_PERCENTS) < 0);
- }
- });
- }
-
protected void assertDurationLessThan(long duration, long maxDuration) {
System.out.printf("Test %s : %d ms (max allowed is %d)\n", testName.getMethodName(), duration, maxDuration);
assertThat(duration).as(String.format("Expected less than %d ms, got %d ms", maxDuration, duration)).isLessThanOrEqualTo(maxDuration);
}
- protected void assertDurationLessThan(ErrorCollector collector, long duration, final long maxDuration) {
- System.out.printf("Test %s : %d ms (max allowed is %d)\n", testName.getMethodName(), duration, maxDuration);
- collector.checkThat(String.format("Expected less than %d ms, got %d ms", maxDuration, duration), duration, new CustomMatcher<Long>("a value less than "
- + maxDuration) {
- @Override
- public boolean matches(Object item) {
- return ((item instanceof Long) && ((Long) item).compareTo(maxDuration) < 0);
- }
- });
- }
-
protected Properties readProfiling(File baseDir, String moduleKey) throws IOException {
File profilingFile = new File(baseDir, ".sonar/profiling/" + moduleKey + "-profiler.properties");
Properties props = new Properties();
diff --git a/tests/src/test/java/org/sonarqube/tests/performance/PerfRule.java b/tests/src/test/java/org/sonarqube/tests/performance/PerfRule.java
index 7b12d79bd38..1887d1aaba9 100644
--- a/tests/src/test/java/org/sonarqube/tests/performance/PerfRule.java
+++ b/tests/src/test/java/org/sonarqube/tests/performance/PerfRule.java
@@ -20,22 +20,20 @@
package org.sonarqube.tests.performance;
import com.google.common.base.Joiner;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
import org.hamcrest.CustomMatcher;
import org.junit.rules.ErrorCollector;
import org.junit.runner.Description;
import org.junit.runners.model.Statement;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-
public abstract class PerfRule extends ErrorCollector {
private final int runCount;
- private final List<List<Long>> recordedResults = new ArrayList<List<Long>>();
+ private final List<List<Long>> recordedResults = new ArrayList<>();
private int currentRun;
- private String testName;
public PerfRule(int runCount) {
this.runCount = runCount;
@@ -43,12 +41,11 @@ public abstract class PerfRule extends ErrorCollector {
@Override
public Statement apply(final Statement base, Description description) {
- this.testName = description.getMethodName();
return new Statement() {
@Override
public void evaluate() throws Throwable {
for (currentRun = 1; currentRun <= runCount; currentRun++) {
- recordedResults.add(new ArrayList<Long>());
+ recordedResults.add(new ArrayList<>());
beforeEachRun();
base.evaluate();
}
@@ -66,6 +63,7 @@ public abstract class PerfRule extends ErrorCollector {
long meanDuration = computeAverageDurationOfCurrentStep();
double variation = 100.0 * (0.0 + meanDuration - expectedDuration) / expectedDuration;
checkThat(String.format("Expected %d ms in average, got %d ms [%s]", expectedDuration, meanDuration, Joiner.on(",").join(getAllResultsOfCurrentStep())), Math.abs(variation),
+
new CustomMatcher<Double>(
"a value less than "
+ AbstractPerfTest.ACCEPTED_DURATION_VARIATION_IN_PERCENTS) {
@@ -101,21 +99,6 @@ public abstract class PerfRule extends ErrorCollector {
return recordedResults.get(currentRun - 1);
}
- public void assertDurationLessThan(long duration, final long maxDuration) {
- currentResults().add(duration);
- if (isLastRun()) {
- long meanDuration = computeAverageDurationOfCurrentStep();
- checkThat(String.format("Expected less than %d ms in average, got %d ms [%s]", maxDuration, meanDuration, Joiner.on(",").join(getAllResultsOfCurrentStep())), meanDuration,
- new CustomMatcher<Long>("a value less than "
- + maxDuration) {
- @Override
- public boolean matches(Object item) {
- return ((item instanceof Long) && ((Long) item).compareTo(maxDuration) < 0);
- }
- });
- }
- }
-
private boolean isLastRun() {
return currentRun == runCount;
}
diff --git a/tests/src/test/java/org/sonarqube/tests/performance/scanner/DuplicationTest.java b/tests/src/test/java/org/sonarqube/tests/performance/scanner/DuplicationTest.java
index 4729fb331d8..6d18fec7152 100644
--- a/tests/src/test/java/org/sonarqube/tests/performance/scanner/DuplicationTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/performance/scanner/DuplicationTest.java
@@ -33,7 +33,7 @@ import org.junit.Test;
import org.junit.rules.ErrorCollector;
import org.junit.rules.TemporaryFolder;
import org.sonarqube.tests.performance.AbstractPerfTest;
-import org.sonarqube.ws.WsMeasures;
+import org.sonarqube.ws.Measures;
import org.sonarqube.ws.client.HttpConnector;
import org.sonarqube.ws.client.WsClient;
import org.sonarqube.ws.client.WsClientFactories;
@@ -85,7 +85,7 @@ public class DuplicationTest extends AbstractPerfTest {
.setMetricKeys(asList("duplicated_lines", "duplicated_blocks", "duplicated_files", "duplicated_lines_density")))
.getComponent().getMeasuresList()
.stream()
- .collect(Collectors.toMap(WsMeasures.Measure::getMetric, measure -> parseDouble(measure.getValue())));
+ .collect(Collectors.toMap(Measures.Measure::getMetric, measure -> parseDouble(measure.getValue())));
}
private WsClient newWsClient() {
diff --git a/tests/src/test/java/org/sonarqube/tests/project/ProjectBulkDeletionPageTest.java b/tests/src/test/java/org/sonarqube/tests/project/ProjectBulkDeletionPageTest.java
index a040b04d25d..770e83b8192 100644
--- a/tests/src/test/java/org/sonarqube/tests/project/ProjectBulkDeletionPageTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/project/ProjectBulkDeletionPageTest.java
@@ -25,7 +25,7 @@ import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsProjects.CreateWsResponse.Project;
+import org.sonarqube.ws.Projects.CreateWsResponse.Project;
import org.sonarqube.ws.client.component.SearchProjectsRequest;
import static com.codeborne.selenide.Condition.text;
@@ -53,9 +53,9 @@ public class ProjectBulkDeletionPageTest {
*/
@Test
public void bulk_deletion_on_selected_projects() throws Exception {
- Project project1 = tester.projects().generate(null, t -> t.setName("Foo"));
- Project project2 = tester.projects().generate(null, t -> t.setName("Bar"));
- Project project3 = tester.projects().generate(null, t -> t.setName("FooQux"));
+ Project project1 = tester.projects().provision(p -> p.setName("Foo"));
+ Project project2 = tester.projects().provision(p -> p.setName("Bar"));
+ Project project3 = tester.projects().provision(p -> p.setName("FooQux"));
tester.openBrowser().logIn().submitCredentials(sysAdminLogin).open("/organizations/default-organization/projects_management");
$("#projects-management-page").shouldHave(text(project1.getName())).shouldHave(text(project2.getName())).shouldHave(text(project3.getName()));
diff --git a/tests/src/test/java/org/sonarqube/tests/project/ProjectBulkDeletionTest.java b/tests/src/test/java/org/sonarqube/tests/project/ProjectBulkDeletionTest.java
index 559589ffc58..7036f46a69d 100644
--- a/tests/src/test/java/org/sonarqube/tests/project/ProjectBulkDeletionTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/project/ProjectBulkDeletionTest.java
@@ -28,8 +28,8 @@ import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations;
-import org.sonarqube.ws.WsProjects.CreateWsResponse;
-import org.sonarqube.ws.WsProjects.SearchWsResponse.Component;
+import org.sonarqube.ws.Projects.CreateWsResponse;
+import org.sonarqube.ws.Projects.SearchWsResponse.Component;
import org.sonarqube.ws.client.project.SearchWsRequest;
import static org.assertj.core.api.Assertions.assertThat;
@@ -46,9 +46,9 @@ public class ProjectBulkDeletionTest {
@Test
public void delete_projects() {
Organizations.Organization organization = tester.organizations().generate();
- CreateWsResponse.Project firstProvisionedProject = tester.projects().generate(organization, p -> p.setKey("first-provisioned-project"));
- CreateWsResponse.Project secondProvisionedProject = tester.projects().generate(organization, p -> p.setKey("second-provisioned-project"));
- CreateWsResponse.Project analyzedProject = tester.projects().generate(organization);
+ CreateWsResponse.Project firstProvisionedProject = tester.projects().provision(organization, p -> p.setKey("first-provisioned-project"));
+ CreateWsResponse.Project secondProvisionedProject = tester.projects().provision(organization, p -> p.setKey("second-provisioned-project"));
+ CreateWsResponse.Project analyzedProject = tester.projects().provision(organization);
analyzeProject(analyzedProject.getKey(), organization.getKey());
@@ -66,7 +66,7 @@ public class ProjectBulkDeletionTest {
@Test
public void delete_more_than_50_projects_at_the_same_time() {
Organizations.Organization organization = tester.organizations().generate();
- IntStream.range(0, 60).forEach(i -> tester.projects().generate(organization));
+ IntStream.range(0, 60).forEach(i -> tester.projects().provision(organization));
SearchWsRequest request = SearchWsRequest.builder().setOrganization(organization.getKey()).build();
assertThat(tester.wsClient().projects().search(request).getPaging().getTotal()).isEqualTo(60);
diff --git a/tests/src/test/java/org/sonarqube/tests/project/ProjectDeletionTest.java b/tests/src/test/java/org/sonarqube/tests/project/ProjectDeletionTest.java
index abd50a848cd..6495e142727 100644
--- a/tests/src/test/java/org/sonarqube/tests/project/ProjectDeletionTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/project/ProjectDeletionTest.java
@@ -33,10 +33,10 @@ import org.junit.rules.TestRule;
import org.junit.rules.Timeout;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations;
-import org.sonarqube.ws.WsComponents;
-import org.sonarqube.ws.WsProjects;
-import org.sonarqube.ws.WsProjects.CreateWsResponse.Project;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Components;
+import org.sonarqube.ws.Projects;
+import org.sonarqube.ws.Projects.CreateWsResponse.Project;
+import org.sonarqube.ws.Users;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.WsClient;
import org.sonarqube.ws.client.WsResponse;
@@ -78,7 +78,7 @@ public class ProjectDeletionTest {
ItUtils.expectUnauthorizedError(() -> executeDeleteRequest(tester.asAnonymous().wsClient(), projectKey));
// fail if insufficient privilege
- WsUsers.CreateWsResponse.User user = tester.users().generate();
+ Users.CreateWsResponse.User user = tester.users().generate();
ItUtils.expectForbiddenError(() -> executeDeleteRequest(tester.as(user.getLogin()).wsClient(), projectKey));
// succeed to delete if administrator
@@ -193,7 +193,7 @@ public class ProjectDeletionTest {
* Projects administration page - uses database
*/
private boolean isInProjectsSearch(Organizations.Organization organization, String name) {
- WsProjects.SearchWsResponse response = tester.wsClient().projects().search(
+ Projects.SearchWsResponse response = tester.wsClient().projects().search(
SearchWsRequest.builder().setOrganization(organization.getKey()).setQuery(name).setQualifiers(singletonList("TRK")).build());
return response.getComponentsCount() > 0;
}
@@ -202,7 +202,7 @@ public class ProjectDeletionTest {
* Projects page - api/components/search_projects - uses ES + DB
*/
private boolean isInComponentSearchProjects(String name) {
- WsComponents.SearchProjectsWsResponse response = tester.wsClient().components().searchProjects(
+ Components.SearchProjectsWsResponse response = tester.wsClient().components().searchProjects(
SearchProjectsRequest.builder().setFilter("query=\"" + name + "\"").build());
return response.getComponentsCount() > 0;
}
diff --git a/tests/src/test/java/org/sonarqube/tests/project/ProjectFilterTest.java b/tests/src/test/java/org/sonarqube/tests/project/ProjectFilterTest.java
index 69913864a08..95f4a73fdbc 100644
--- a/tests/src/test/java/org/sonarqube/tests/project/ProjectFilterTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/project/ProjectFilterTest.java
@@ -32,8 +32,8 @@ import org.junit.Test;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Common;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.WsComponents.Component;
-import org.sonarqube.ws.WsComponents.SearchProjectsWsResponse;
+import org.sonarqube.ws.Components.Component;
+import org.sonarqube.ws.Components.SearchProjectsWsResponse;
import org.sonarqube.ws.client.component.SearchProjectsRequest;
import org.sonarqube.ws.client.project.CreateRequest;
diff --git a/tests/src/test/java/org/sonarqube/tests/project/ProjectKeyUpdateTest.java b/tests/src/test/java/org/sonarqube/tests/project/ProjectKeyUpdateTest.java
index 8a2c14f3806..b560d54c68f 100644
--- a/tests/src/test/java/org/sonarqube/tests/project/ProjectKeyUpdateTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/project/ProjectKeyUpdateTest.java
@@ -34,9 +34,9 @@ import org.junit.rules.DisableOnDebug;
import org.junit.rules.TestRule;
import org.junit.rules.Timeout;
import org.sonarqube.qa.util.Tester;
+import org.sonarqube.ws.Components;
import org.sonarqube.ws.Organizations;
-import org.sonarqube.ws.WsComponents;
-import org.sonarqube.ws.WsProjects;
+import org.sonarqube.ws.Projects;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.WsResponse;
import org.sonarqube.ws.client.component.SearchProjectsRequest;
@@ -71,7 +71,7 @@ public class ProjectKeyUpdateTest {
public void update_key() {
analyzeXooSample();
String newProjectKey = "another_project_key";
- WsComponents.Component project = tester.wsClient().components().show(new ShowWsRequest().setKey(PROJECT_KEY)).getComponent();
+ Components.Component project = tester.wsClient().components().show(new ShowWsRequest().setKey(PROJECT_KEY)).getComponent();
assertThat(project.getKey()).isEqualTo(PROJECT_KEY);
tester.wsClient().projects().updateKey(UpdateKeyWsRequest.builder()
@@ -86,10 +86,10 @@ public class ProjectKeyUpdateTest {
public void bulk_update_key() {
analyzeXooSample();
String newProjectKey = "another_project_key";
- WsComponents.Component project = tester.wsClient().components().show(new ShowWsRequest().setKey(PROJECT_KEY)).getComponent();
+ Components.Component project = tester.wsClient().components().show(new ShowWsRequest().setKey(PROJECT_KEY)).getComponent();
assertThat(project.getKey()).isEqualTo(PROJECT_KEY);
- WsProjects.BulkUpdateKeyWsResponse result = tester.wsClient().projects().bulkUpdateKey(BulkUpdateKeyWsRequest.builder()
+ Projects.BulkUpdateKeyWsResponse result = tester.wsClient().projects().bulkUpdateKey(BulkUpdateKeyWsRequest.builder()
.setKey(PROJECT_KEY)
.setFrom(PROJECT_KEY)
.setTo(newProjectKey)
@@ -98,14 +98,14 @@ public class ProjectKeyUpdateTest {
assertThat(tester.wsClient().components().show(new ShowWsRequest().setId(project.getId())).getComponent().getKey()).isEqualTo(newProjectKey);
assertThat(result.getKeysCount()).isEqualTo(1);
assertThat(result.getKeys(0))
- .extracting(WsProjects.BulkUpdateKeyWsResponse.Key::getKey, WsProjects.BulkUpdateKeyWsResponse.Key::getNewKey, WsProjects.BulkUpdateKeyWsResponse.Key::getDuplicate)
+ .extracting(Projects.BulkUpdateKeyWsResponse.Key::getKey, Projects.BulkUpdateKeyWsResponse.Key::getNewKey, Projects.BulkUpdateKeyWsResponse.Key::getDuplicate)
.containsOnlyOnce(PROJECT_KEY, newProjectKey, false);
}
@Test
public void update_key_of_provisioned_project() {
Organizations.Organization organization = tester.organizations().generate();
- WsProjects.CreateWsResponse.Project project = createProject(organization, "one", "Foo");
+ Projects.CreateWsResponse.Project project = createProject(organization, "one", "Foo");
updateKey(project, "two");
@@ -120,7 +120,7 @@ public class ProjectKeyUpdateTest {
@Test
public void recover_indexing_errors_when_updating_key_of_provisioned_project() throws Exception {
Organizations.Organization organization = tester.organizations().generate();
- WsProjects.CreateWsResponse.Project project = createProject(organization, "one", "Foo");
+ Projects.CreateWsResponse.Project project = createProject(organization, "one", "Foo");
lockWritesOnProjectIndices();
@@ -228,7 +228,7 @@ public class ProjectKeyUpdateTest {
tester.elasticsearch().unlockWrites("projectmeasures");
}
- private void updateKey(WsProjects.CreateWsResponse.Project project, String newKey) {
+ private void updateKey(Projects.CreateWsResponse.Project project, String newKey) {
tester.wsClient().projects().updateKey(UpdateKeyWsRequest.builder().setKey(project.getKey()).setNewKey(newKey).build());
}
@@ -236,7 +236,7 @@ public class ProjectKeyUpdateTest {
tester.wsClient().projects().updateKey(UpdateKeyWsRequest.builder().setKey(initialKey).setNewKey(newKey).build());
}
- private WsProjects.CreateWsResponse.Project createProject(Organizations.Organization organization, String key, String name) {
+ private Projects.CreateWsResponse.Project createProject(Organizations.Organization organization, String key, String name) {
CreateRequest createRequest = CreateRequest.builder().setKey(key).setName(name).setOrganization(organization.getKey()).build();
return tester.wsClient().projects().create(createRequest).getProject();
}
@@ -254,7 +254,7 @@ public class ProjectKeyUpdateTest {
*/
@CheckForNull
private String keyInComponentSearchProjects(String name) {
- WsComponents.SearchProjectsWsResponse response = tester.wsClient().components().searchProjects(
+ Components.SearchProjectsWsResponse response = tester.wsClient().components().searchProjects(
SearchProjectsRequest.builder().setFilter("query=\"" + name + "\"").build());
if (response.getComponentsCount() > 0) {
return response.getComponents(0).getKey();
diff --git a/tests/src/test/java/org/sonarqube/tests/project/ProjectLinksTest.java b/tests/src/test/java/org/sonarqube/tests/project/ProjectLinksTest.java
index 4efc15da144..b980b287381 100644
--- a/tests/src/test/java/org/sonarqube/tests/project/ProjectLinksTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/project/ProjectLinksTest.java
@@ -32,7 +32,7 @@ import org.junit.rules.RuleChain;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.qa.util.pageobjects.ProjectLinkItem;
import org.sonarqube.qa.util.pageobjects.ProjectLinksPage;
-import org.sonarqube.ws.WsProjectLinks.CreateWsResponse;
+import org.sonarqube.ws.ProjectLinks.CreateWsResponse;
import org.sonarqube.ws.client.projectlinks.CreateWsRequest;
import org.sonarqube.ws.client.projectlinks.DeleteWsRequest;
diff --git a/tests/src/test/java/org/sonarqube/tests/project/ProjectProvisioningTest.java b/tests/src/test/java/org/sonarqube/tests/project/ProjectProvisioningTest.java
index 9f9b1a8b7a4..de8a6b65abc 100644
--- a/tests/src/test/java/org/sonarqube/tests/project/ProjectProvisioningTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/project/ProjectProvisioningTest.java
@@ -30,9 +30,9 @@ import org.junit.rules.TestRule;
import org.junit.rules.Timeout;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations;
-import org.sonarqube.ws.WsComponents;
-import org.sonarqube.ws.WsProjects;
-import org.sonarqube.ws.WsProjects.CreateWsResponse.Project;
+import org.sonarqube.ws.Components;
+import org.sonarqube.ws.Projects;
+import org.sonarqube.ws.Projects.CreateWsResponse.Project;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.WsResponse;
import org.sonarqube.ws.client.component.SearchProjectsRequest;
@@ -100,7 +100,7 @@ public class ProjectProvisioningTest {
* Projects administration page - uses database
*/
private boolean isInProjectsSearch(Organizations.Organization organization, String name) {
- WsProjects.SearchWsResponse response = tester.wsClient().projects().search(
+ Projects.SearchWsResponse response = tester.wsClient().projects().search(
SearchWsRequest.builder().setOrganization(organization.getKey()).setQuery(name).setQualifiers(singletonList("TRK")).build());
return response.getComponentsCount() > 0;
}
@@ -109,7 +109,7 @@ public class ProjectProvisioningTest {
* Projects page - api/components/search_projects - uses ES + DB
*/
private boolean isInComponentSearchProjects(String name) {
- WsComponents.SearchProjectsWsResponse response = tester.wsClient().components().searchProjects(
+ Components.SearchProjectsWsResponse response = tester.wsClient().components().searchProjects(
SearchProjectsRequest.builder().setFilter("query=\"" + name + "\"").build());
return response.getComponentsCount() > 0;
}
diff --git a/tests/src/test/java/org/sonarqube/tests/project/ProjectSearchTest.java b/tests/src/test/java/org/sonarqube/tests/project/ProjectSearchTest.java
index 69cc1a69cfd..65da3c02981 100644
--- a/tests/src/test/java/org/sonarqube/tests/project/ProjectSearchTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/project/ProjectSearchTest.java
@@ -28,9 +28,9 @@ import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations;
-import org.sonarqube.ws.WsProjects.CreateWsResponse;
-import org.sonarqube.ws.WsProjects.SearchWsResponse;
-import org.sonarqube.ws.WsProjects.SearchWsResponse.Component;
+import org.sonarqube.ws.Projects.CreateWsResponse;
+import org.sonarqube.ws.Projects.SearchWsResponse;
+import org.sonarqube.ws.Projects.SearchWsResponse.Component;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.project.SearchWsRequest;
@@ -50,8 +50,8 @@ public class ProjectSearchTest {
@Test
public void search_old_projects() {
Organizations.Organization organization = tester.organizations().generate();
- CreateWsResponse.Project oldProject = tester.projects().generate(organization);
- CreateWsResponse.Project recentProject = tester.projects().generate(organization);
+ CreateWsResponse.Project oldProject = tester.projects().provision(organization);
+ CreateWsResponse.Project recentProject = tester.projects().provision(organization);
Date now = new Date();
Date oneYearAgo = DateUtils.addDays(now, -365);
Date moreThanOneYearAgo = DateUtils.addDays(now, -366);
@@ -70,9 +70,9 @@ public class ProjectSearchTest {
@Test
public void search_on_key_query_partial_match_case_insensitive() {
Organizations.Organization organization = tester.organizations().generate();
- CreateWsResponse.Project lowerCaseProject = tester.projects().generate(organization, p -> p.setKey("project-key"));
- CreateWsResponse.Project upperCaseProject = tester.projects().generate(organization, p -> p.setKey("PROJECT-KEY"));
- CreateWsResponse.Project anotherProject = tester.projects().generate(organization, p -> p.setKey("another-project"));
+ CreateWsResponse.Project lowerCaseProject = tester.projects().provision(organization, p -> p.setKey("project-key"));
+ CreateWsResponse.Project upperCaseProject = tester.projects().provision(organization, p -> p.setKey("PROJECT-KEY"));
+ CreateWsResponse.Project anotherProject = tester.projects().provision(organization, p -> p.setKey("another-project"));
analyzeProject(lowerCaseProject.getKey(), organization.getKey());
analyzeProject(upperCaseProject.getKey(), organization.getKey());
@@ -92,9 +92,9 @@ public class ProjectSearchTest {
@Test
public void search_provisioned_projects() {
Organizations.Organization organization = tester.organizations().generate();
- CreateWsResponse.Project firstProvisionedProject = tester.projects().generate(organization);
- CreateWsResponse.Project secondProvisionedProject = tester.projects().generate(organization);
- CreateWsResponse.Project analyzedProject = tester.projects().generate(organization);
+ CreateWsResponse.Project firstProvisionedProject = tester.projects().provision(organization);
+ CreateWsResponse.Project secondProvisionedProject = tester.projects().provision(organization);
+ CreateWsResponse.Project analyzedProject = tester.projects().provision(organization);
analyzeProject(analyzedProject.getKey(), organization.getKey());
diff --git a/tests/src/test/java/org/sonarqube/tests/projectAdministration/ProjectAdministrationTest.java b/tests/src/test/java/org/sonarqube/tests/project/ProjectSettingsTest.java
index 2e2c5a4551d..b6550028eb5 100644
--- a/tests/src/test/java/org/sonarqube/tests/projectAdministration/ProjectAdministrationTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/project/ProjectSettingsTest.java
@@ -17,65 +17,48 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-package org.sonarqube.tests.projectAdministration;
+package org.sonarqube.tests.project;
import com.sonar.orchestrator.Orchestrator;
import com.sonar.orchestrator.build.SonarScanner;
import java.io.UnsupportedEncodingException;
-import java.sql.SQLException;
-import javax.annotation.Nullable;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
-import org.junit.rules.ExpectedException;
import org.openqa.selenium.By;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.qa.util.pageobjects.Navigation;
-import org.sonarqube.qa.util.pageobjects.ProjectsManagementPage;
import org.sonarqube.qa.util.pageobjects.settings.SettingsPage;
-import org.sonarqube.tests.Category1Suite;
-import org.sonarqube.ws.WsPermissions;
-import org.sonarqube.ws.client.permission.AddUserToTemplateWsRequest;
-import org.sonarqube.ws.client.permission.CreateTemplateWsRequest;
-import org.sonarqube.ws.client.permission.UsersWsRequest;
import static com.codeborne.selenide.Selenide.$;
-import static org.assertj.core.api.Assertions.assertThat;
import static util.ItUtils.projectDir;
-/**
- * TODO to be split and moved to project package
- */
-public class ProjectAdministrationTest {
+public class ProjectSettingsTest {
@ClassRule
- public static Orchestrator orchestrator = Category1Suite.ORCHESTRATOR;
-
- @Rule
- public ExpectedException expectedException = ExpectedException.none();
+ public static Orchestrator orchestrator = ProjectSuite.ORCHESTRATOR;
@Rule
- public Tester tester = new Tester(orchestrator).disableOrganizations();
-
- private Navigation nav = Navigation.create(orchestrator);
+ public Tester tester = new Tester(orchestrator);
private String adminUser;
@Before
- public void deleteAnalysisData() throws SQLException {
- orchestrator.resetData();
- adminUser = tester.users().generateAdministrator().getLogin();
+ public void setUp() {
+ adminUser = tester.users().generateAdministratorOnDefaultOrganization().getLogin();
}
@Test
- public void display_project_settings() throws UnsupportedEncodingException {
- scanSample(null, null);
+ public void display_project_settings() {
+ analyzeSample();
- SettingsPage page = nav.logIn().submitCredentials(adminUser).openSettings("sample")
+ SettingsPage page = tester.openBrowser()
+ .logIn()
+ .submitCredentials(adminUser)
+ .openSettings("sample")
.assertMenuContains("Analysis Scope")
.assertMenuContains("Category 1")
- .assertMenuContains("DEV")
.assertMenuContains("project-only")
.assertMenuContains("Xoo")
.assertSettingDisplayed("sonar.dbcleaner.hoursBeforeKeepingOnlyOneSnapshotByDay");
@@ -91,15 +74,25 @@ public class ProjectAdministrationTest {
.assertStringSettingValue("sonar.dbcleaner.hoursBeforeKeepingOnlyOneSnapshotByDay", "48");
}
+ /**
+ * Values set on project level must not appear on global level
+ */
@Test
- public void display_correct_global_setting () throws UnsupportedEncodingException {
- scanSample(null, null);
- SettingsPage page = nav.logIn().submitCredentials(adminUser).openSettings("sample")
+ public void display_correct_global_setting() {
+ analyzeSample();
+ Navigation nav = tester.openBrowser();
+ SettingsPage page = nav.logIn()
+ .submitCredentials(adminUser)
+ .openSettings("sample")
.openCategory("Analysis Scope")
.assertSettingDisplayed("sonar.coverage.exclusions")
.setStringValue("sonar.coverage.exclusions", "foo")
.assertStringSettingValue("sonar.coverage.exclusions", "foo");
+ nav.logOut();
+ // login as root
+ tester.wsClient().users().skipOnboardingTutorial();
+ nav.logIn().submitCredentials("admin", "admin");
$(".global-navbar-menu ").$(By.linkText("Administration")).click();
page
.openCategory("Analysis Scope")
@@ -111,42 +104,15 @@ public class ProjectAdministrationTest {
public void display_module_settings() throws UnsupportedEncodingException {
orchestrator.executeBuild(SonarScanner.create(projectDir("shared/xoo-multi-modules-sample")));
- nav.logIn().submitCredentials(adminUser)
+ tester.openBrowser().logIn().submitCredentials(adminUser)
.openSettings("com.sonarsource.it.samples:multi-modules-sample:module_a")
.assertMenuContains("Analysis Scope")
.assertSettingDisplayed("sonar.coverage.exclusions");
}
- @Test
- public void bulk_apply_permission_template() {
- String project = tester.projects().generate(null).getKey();
- String user = tester.users().generate().getLogin();
- tester.wsClient().permissions().createTemplate(new CreateTemplateWsRequest().setName("foo-template"));
- tester.wsClient().permissions().addUserToTemplate(
- new AddUserToTemplateWsRequest()
- .setPermission("admin")
- .setTemplateName("foo-template")
- .setLogin(user));
- ProjectsManagementPage page = nav.logIn().submitCredentials(adminUser).openProjectsManagement();
- page.shouldHaveProject(project);
- page.bulkApplyPermissionTemplate("foo-template");
- WsPermissions.UsersWsResponse usersResponse = tester.wsClient().permissions().users(new UsersWsRequest()
- .setProjectKey(project)
- .setPermission("admin")
- );
- assertThat(usersResponse.getUsersCount()).isEqualTo(1);
- assertThat(usersResponse.getUsers(0).getLogin()).isEqualTo(user);
- }
-
- private void scanSample(@Nullable String date, @Nullable String profile) {
+ private void analyzeSample() {
SonarScanner scan = SonarScanner.create(projectDir("shared/xoo-sample"))
.setProperty("sonar.cpd.exclusions", "**/*");
- if (date != null) {
- scan.setProperty("sonar.projectDate", date);
- }
- if (profile != null) {
- scan.setProfile(profile);
- }
orchestrator.executeBuild(scan);
}
}
diff --git a/tests/src/test/java/org/sonarqube/tests/project/ProjectSuite.java b/tests/src/test/java/org/sonarqube/tests/project/ProjectSuite.java
index 65121e03c67..711ace6dd4e 100644
--- a/tests/src/test/java/org/sonarqube/tests/project/ProjectSuite.java
+++ b/tests/src/test/java/org/sonarqube/tests/project/ProjectSuite.java
@@ -26,6 +26,7 @@ import org.junit.ClassRule;
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
+import static util.ItUtils.pluginArtifact;
import static util.ItUtils.xooPlugin;
@RunWith(Suite.class)
@@ -42,10 +43,11 @@ import static util.ItUtils.xooPlugin;
ProjectsPageTest.class,
ProjectProvisioningTest.class,
ProjectSearchTest.class,
+ ProjectSettingsTest.class,
ProjectVisibilityPageTest.class
})
public class ProjectSuite {
- public static final int SEARCH_HTTP_PORT = NetworkUtils.getNextAvailablePort(InetAddress.getLoopbackAddress());
+ static final int SEARCH_HTTP_PORT = NetworkUtils.getNextAvailablePort(InetAddress.getLoopbackAddress());
@ClassRule
public static final Orchestrator ORCHESTRATOR = Orchestrator.builderEnv()
@@ -59,6 +61,9 @@ public class ProjectSuite {
.addPlugin(xooPlugin())
+ // for ProjectSettingsTest
+ .addPlugin(pluginArtifact("sonar-subcategories-plugin"))
+
.build();
}
diff --git a/tests/src/test/java/org/sonarqube/tests/project/ProjectVisibilityPageTest.java b/tests/src/test/java/org/sonarqube/tests/project/ProjectVisibilityPageTest.java
index 0c2c745f9f6..92699c3332c 100644
--- a/tests/src/test/java/org/sonarqube/tests/project/ProjectVisibilityPageTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/project/ProjectVisibilityPageTest.java
@@ -27,7 +27,7 @@ import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.qa.util.pageobjects.ProjectsManagementPage;
-import org.sonarqube.ws.WsComponents;
+import org.sonarqube.ws.Components;
import org.sonarqube.ws.client.component.SearchProjectsRequest;
import org.sonarqube.ws.client.permission.RemoveGroupWsRequest;
import org.sonarqube.ws.client.project.UpdateVisibilityRequest;
@@ -84,7 +84,7 @@ public class ProjectVisibilityPageTest {
.createProject("foo", "foo", visibility)
.shouldHaveProjectsCount(1);
- WsComponents.SearchProjectsWsResponse response = newAdminWsClient(orchestrator).components().searchProjects(
+ Components.SearchProjectsWsResponse response = newAdminWsClient(orchestrator).components().searchProjects(
SearchProjectsRequest.builder().build());
assertThat(response.getComponentsCount()).isEqualTo(1);
assertThat(response.getComponents(0).getKey()).isEqualTo("foo");
diff --git a/tests/src/test/java/org/sonarqube/tests/project/ProjectsPageTest.java b/tests/src/test/java/org/sonarqube/tests/project/ProjectsPageTest.java
index d0008cc0bd6..a18787080f5 100644
--- a/tests/src/test/java/org/sonarqube/tests/project/ProjectsPageTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/project/ProjectsPageTest.java
@@ -29,7 +29,7 @@ import org.junit.rules.RuleChain;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.qa.util.pageobjects.Navigation;
import org.sonarqube.qa.util.pageobjects.projects.ProjectsPage;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Users;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.WsClient;
@@ -104,7 +104,7 @@ public class ProjectsPageTest {
page.shouldHaveTotal(2).shouldDisplayAllProjectsWidthSort("-analysis_date");
// all projects by default for logged in user
- WsUsers.CreateWsResponse.User administrator = tester.users().generateAdministratorOnDefaultOrganization();
+ Users.CreateWsResponse.User administrator = tester.users().generateAdministratorOnDefaultOrganization();
page = nav.logIn().submitCredentials(administrator.getLogin()).openProjects();
page.shouldHaveTotal(2).shouldDisplayAllProjects();
@@ -156,7 +156,7 @@ public class ProjectsPageTest {
@Test
public void should_switch_between_perspectives() {
- WsUsers.CreateWsResponse.User administrator = tester.users().generateAdministratorOnDefaultOrganization();
+ Users.CreateWsResponse.User administrator = tester.users().generateAdministratorOnDefaultOrganization();
ProjectsPage page = tester.openBrowser()
.logIn().submitCredentials(administrator.getLogin())
.openProjects();
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateForSmallChangesetsTest.java b/tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateForSmallChangesetsTest.java
index d67581b28b7..e4f9bf3fd27 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateForSmallChangesetsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateForSmallChangesetsTest.java
@@ -33,16 +33,16 @@ import org.junit.Test;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.MediaTypes;
import org.sonarqube.ws.Organizations;
-import org.sonarqube.ws.WsCe;
-import org.sonarqube.ws.WsProjects.CreateWsResponse.Project;
-import org.sonarqube.ws.WsQualityGates;
-import org.sonarqube.ws.WsQualityGates.CreateWsResponse;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Ce;
+import org.sonarqube.ws.Projects.CreateWsResponse.Project;
+import org.sonarqube.ws.Qualitygates;
+import org.sonarqube.ws.Qualitygates.CreateWsResponse;
+import org.sonarqube.ws.Users;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.WsResponse;
-import org.sonarqube.ws.client.qualitygate.CreateConditionRequest;
-import org.sonarqube.ws.client.qualitygate.ProjectStatusWsRequest;
-import org.sonarqube.ws.client.qualitygate.UpdateConditionRequest;
+import org.sonarqube.ws.client.qualitygates.CreateConditionRequest;
+import org.sonarqube.ws.client.qualitygates.ProjectStatusRequest;
+import org.sonarqube.ws.client.qualitygates.UpdateConditionRequest;
import static org.assertj.core.api.Assertions.assertThat;
import static util.ItUtils.getMeasure;
@@ -59,21 +59,20 @@ public class OrganizationQualityGateForSmallChangesetsTest {
@Test
public void do_not_fail_quality_gate_with_poor_LEAK_coverage_and_a_max_of_19_lines_of_NEW_code() throws Exception {
Organizations.Organization organization = tester.organizations().generate();
- Project project = tester.projects().generate(organization);
+ Project project = tester.projects().provision(organization);
CreateWsResponse qualityGate = tester.qGates().generate();
tester.qGates().associateProject(qualityGate, project);
- WsQualityGates.CreateConditionWsResponse condition = tester.wsClient().qualityGates().createCondition(CreateConditionRequest.builder()
- .setQualityGateId(qualityGate.getId())
- .setMetricKey("new_coverage")
- .setOperator("LT")
+ Qualitygates.CreateConditionWsResponse condition = tester.wsClient().qualityGates().createCondition(new CreateConditionRequest()
+ .setGateId(String.valueOf(qualityGate.getId()))
+ .setMetric("new_coverage")
+ .setOp("LT")
.setWarning("90")
.setError("80")
- .setPeriod(1)
- .build());
+ .setPeriod("1"));
tester.settings().setProjectSetting(project.getKey(), "sonar.leak.period", "previous_version");
String password = "password1";
- WsUsers.CreateWsResponse.User user = tester.users().generateAdministrator(organization, u -> u.setPassword(password));
+ Users.CreateWsResponse.User user = tester.users().generateAdministrator(organization, u -> u.setPassword(password));
// no leak => use usual behaviour
SonarScanner analysis = SonarScanner
@@ -106,14 +105,13 @@ public class OrganizationQualityGateForSmallChangesetsTest {
assertIgnoredConditions("qualitygate/small-changesets/v2-1019-lines", true);
// small leak => if coverage is OK anyways, we do not have to ignore anything
- tester.wsClient().qualityGates().updateCondition(UpdateConditionRequest.builder()
- .setConditionId(condition.getId())
- .setMetricKey("new_coverage")
- .setOperator("LT")
+ tester.wsClient().qualityGates().updateCondition(new UpdateConditionRequest()
+ .setId(String.valueOf(condition.getId()))
+ .setMetric("new_coverage")
+ .setOp("LT")
.setWarning("10")
.setError("20")
- .setPeriod(1)
- .build());
+ .setPeriod("1"));
SonarScanner analysis3 = SonarScanner
.create(projectDir("qualitygate/small-changesets/v2-1019-lines"))
.setProperty("sonar.projectKey", project.getKey())
@@ -129,14 +127,13 @@ public class OrganizationQualityGateForSmallChangesetsTest {
assertIgnoredConditions("qualitygate/small-changesets/v2-1019-lines", false);
// big leak => use usual behaviour
- tester.wsClient().qualityGates().updateCondition(UpdateConditionRequest.builder()
- .setConditionId(condition.getId())
- .setMetricKey("new_coverage")
- .setOperator("LT")
+ tester.wsClient().qualityGates().updateCondition(new UpdateConditionRequest()
+ .setId(String.valueOf(condition.getId()))
+ .setMetric("new_coverage")
+ .setOp("LT")
.setWarning(null)
.setError("70")
- .setPeriod(1)
- .build());
+ .setPeriod("1"));
SonarScanner analysis4 = SonarScanner
.create(projectDir("qualitygate/small-changesets/v2-1020-lines"))
.setProperty("sonar.projectKey", project.getKey())
@@ -155,7 +152,7 @@ public class OrganizationQualityGateForSmallChangesetsTest {
private void assertIgnoredConditions(String projectDir, boolean expected) throws IOException {
String analysisId = getAnalysisId(getTaskIdInLocalReport(projectDir(projectDir)));
boolean ignoredConditions = tester.wsClient().qualityGates()
- .projectStatus(new ProjectStatusWsRequest().setAnalysisId(analysisId))
+ .projectStatus(new ProjectStatusRequest().setAnalysisId(analysisId))
.getProjectStatus()
.getIgnoredConditions();
assertThat(ignoredConditions).isEqualTo(expected);
@@ -167,7 +164,7 @@ public class OrganizationQualityGateForSmallChangesetsTest {
.call(new GetRequest("api/ce/task")
.setParam("id", taskId)
.setMediaType(MediaTypes.PROTOBUF));
- WsCe.TaskResponse activityWsResponse = WsCe.TaskResponse.parseFrom(activity.contentStream());
+ Ce.TaskResponse activityWsResponse = Ce.TaskResponse.parseFrom(activity.contentStream());
return activityWsResponse.getTask().getAnalysisId();
}
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateTest.java b/tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateTest.java
index be243e050bd..2deaa41a397 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateTest.java
@@ -27,12 +27,12 @@ import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.WsProjects.CreateWsResponse.Project;
-import org.sonarqube.ws.WsQualityGates.CreateWsResponse;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Projects.CreateWsResponse.Project;
+import org.sonarqube.ws.Qualitygates.CreateWsResponse;
+import org.sonarqube.ws.Users;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.WsResponse;
-import org.sonarqube.ws.client.qualitygate.CreateConditionRequest;
+import org.sonarqube.ws.client.qualitygates.CreateConditionRequest;
import util.ItUtils;
import static org.assertj.core.api.Assertions.assertThat;
@@ -49,20 +49,19 @@ public class OrganizationQualityGateTest {
@Test
public void always_display_current_quality_gate_in_effect() throws Exception {
Organization organization = tester.organizations().generate();
- Project project = tester.projects().generate(organization);
+ Project project = tester.projects().provision(organization);
CreateWsResponse qualityGate = tester.qGates().generate();
tester.qGates().associateProject(qualityGate, project);
- tester.wsClient().qualityGates().createCondition(CreateConditionRequest.builder()
- .setQualityGateId(qualityGate.getId())
- .setMetricKey("new_coverage")
- .setOperator("LT")
+ tester.wsClient().qualityGates().createCondition(new CreateConditionRequest()
+ .setGateId(String.valueOf(qualityGate.getId()))
+ .setMetric("new_coverage")
+ .setOp("LT")
.setWarning("90")
.setError("80")
- .setPeriod(1)
- .build());
+ .setPeriod("1"));
tester.settings().setProjectSetting(project.getKey(), "sonar.leak.period", "previous_version");
String password = "password1";
- WsUsers.CreateWsResponse.User user = tester.users().generateAdministrator(organization, u -> u.setPassword(password));
+ Users.CreateWsResponse.User user = tester.users().generateAdministrator(organization, u -> u.setPassword(password));
WsResponse response = tester.wsClient().wsConnector().call(new GetRequest("api/navigation/component").setParam("componentKey", project.getKey()));
Map currentQualityGate = (Map) ItUtils.jsonToMap(response.content()).get("qualityGate");
@@ -83,14 +82,13 @@ public class OrganizationQualityGateTest {
CreateWsResponse qualityGate2 = tester.qGates().generate();
tester.qGates().associateProject(qualityGate2, project);
- tester.wsClient().qualityGates().createCondition(CreateConditionRequest.builder()
- .setQualityGateId(qualityGate2.getId())
- .setMetricKey("new_coverage")
- .setOperator("LT")
+ tester.wsClient().qualityGates().createCondition(new CreateConditionRequest()
+ .setGateId(String.valueOf(qualityGate2.getId()))
+ .setMetric("new_coverage")
+ .setOp("LT")
.setWarning("90")
.setError("80")
- .setPeriod(1)
- .build());
+ .setPeriod("1"));
WsResponse response3 = tester.wsClient().wsConnector().call(new GetRequest("api/navigation/component").setParam("componentKey", project.getKey()));
Map currentQualityGate3 = (Map) ItUtils.jsonToMap(response3.content()).get("qualityGate");
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateUiTest.java b/tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateUiTest.java
index 9bb518dca20..507410d6b6b 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateUiTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityGate/OrganizationQualityGateUiTest.java
@@ -31,7 +31,7 @@ import org.sonarqube.qa.util.Tester;
import org.sonarqube.qa.util.pageobjects.ProjectDashboardPage;
import org.sonarqube.qa.util.pageobjects.QualityGatePage;
import org.sonarqube.ws.Organizations;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Users;
import util.issue.IssueRule;
import static com.codeborne.selenide.Selenide.$;
@@ -50,8 +50,8 @@ public class OrganizationQualityGateUiTest {
public IssueRule issueRule = IssueRule.from(orchestrator);
private Organizations.Organization organization;
- private WsUsers.CreateWsResponse.User user;
- private WsUsers.CreateWsResponse.User gateAdmin;
+ private Users.CreateWsResponse.User user;
+ private Users.CreateWsResponse.User gateAdmin;
@Before
public void setUp() throws Exception {
@@ -98,7 +98,7 @@ public class OrganizationQualityGateUiTest {
@Test
public void quality_gate_link_on_project_dashboard_should_have_organization_context() {
- String project = tester.projects().generate(organization).getKey();
+ String project = tester.projects().provision(organization).getKey();
runProjectAnalysis(orchestrator, "shared/xoo-multi-modules-sample",
"sonar.projectKey", project,
"sonar.organization", organization.getKey(),
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityGate/ProjectQualityGatePageTest.java b/tests/src/test/java/org/sonarqube/tests/qualityGate/ProjectQualityGatePageTest.java
index d47377fd3c4..474038f74cc 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityGate/ProjectQualityGatePageTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityGate/ProjectQualityGatePageTest.java
@@ -36,7 +36,7 @@ import org.sonarqube.qa.util.Tester;
import org.sonarqube.qa.util.pageobjects.Navigation;
import org.sonarqube.qa.util.pageobjects.ProjectQualityGatePage;
import org.sonarqube.ws.client.PostRequest;
-import org.sonarqube.ws.client.qualitygate.SelectWsRequest;
+import org.sonarqube.ws.client.qualitygates.SelectRequest;
public class ProjectQualityGatePageTest {
@@ -153,7 +153,7 @@ public class ProjectQualityGatePageTest {
}
private void associateWithQualityGate(QualityGate qualityGate) {
- tester.wsClient().qualityGates().associateProject(new SelectWsRequest().setProjectKey("sample").setGateId(qualityGate.id()));
+ tester.wsClient().qualityGates().select(new SelectRequest().setProjectKey("sample").setGateId(String.valueOf(qualityGate.id())));
}
private QualityGateClient qualityGateClient() {
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateNotificationTest.java b/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateNotificationTest.java
index 84b31c58e83..e2a64b36ddf 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateNotificationTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateNotificationTest.java
@@ -29,15 +29,15 @@ import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsProjects.CreateWsResponse.Project;
-import org.sonarqube.ws.WsQualityGates;
+import org.sonarqube.ws.Projects.CreateWsResponse.Project;
+import org.sonarqube.ws.Qualitygates;
import org.sonarqube.ws.client.PostRequest;
-import org.sonarqube.ws.client.qualitygate.CreateConditionRequest;
+import org.sonarqube.ws.client.qualitygates.CreateConditionRequest;
import org.subethamail.wiser.Wiser;
import org.subethamail.wiser.WiserMessage;
import static org.assertj.core.api.Assertions.assertThat;
-import static org.sonarqube.ws.WsMeasures.Measure;
+import static org.sonarqube.ws.Measures.Measure;
import static util.ItUtils.getMeasure;
import static util.ItUtils.projectDir;
@@ -86,10 +86,10 @@ public class QualityGateNotificationTest {
.failIfNotSuccessful();
// Create quality gate with conditions on variations
- WsQualityGates.CreateWsResponse simple = tester.qGates().generate();
+ Qualitygates.CreateWsResponse simple = tester.qGates().generate();
tester.qGates().service()
- .createCondition(CreateConditionRequest.builder().setQualityGateId(simple.getId()).setMetricKey("ncloc").setPeriod(1).setOperator("EQ").setWarning("0").build());
- Project project = tester.projects().generate(null);
+ .createCondition(new CreateConditionRequest().setGateId(String.valueOf(simple.getId())).setMetric("ncloc").setPeriod("1").setOp("EQ").setWarning("0"));
+ Project project = tester.projects().provision();
tester.qGates().associateProject(simple, project);
SonarScanner analysis = SonarScanner.create(projectDir("qualitygate/xoo-sample")).setProperty("sonar.projectKey", project.getKey());
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateOnRatingMeasuresTest.java b/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateOnRatingMeasuresTest.java
index da87a001fe3..5da686950bf 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateOnRatingMeasuresTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateOnRatingMeasuresTest.java
@@ -24,10 +24,10 @@ import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsMeasures;
-import org.sonarqube.ws.WsProjects.CreateWsResponse.Project;
-import org.sonarqube.ws.WsQualityGates;
-import org.sonarqube.ws.client.qualitygate.CreateConditionRequest;
+import org.sonarqube.ws.Measures;
+import org.sonarqube.ws.Projects.CreateWsResponse.Project;
+import org.sonarqube.ws.Qualitygates;
+import org.sonarqube.ws.client.qualitygates.CreateConditionRequest;
import util.ItUtils;
import static org.assertj.core.api.Assertions.assertThat;
@@ -46,15 +46,14 @@ public class QualityGateOnRatingMeasuresTest {
@Test
public void generate_warning_qgate_on_rating_metric() throws Exception {
- Project project = tester.projects().generate(null);
- WsQualityGates.CreateWsResponse qualityGate = tester.qGates().generate();
+ Project project = tester.projects().provision();
+ Qualitygates.CreateWsResponse qualityGate = tester.qGates().generate();
tester.qGates().associateProject(qualityGate, project);
- tester.qGates().service().createCondition(CreateConditionRequest.builder()
- .setQualityGateId(qualityGate.getId())
- .setMetricKey("security_rating")
- .setOperator("GT")
- .setWarning("3")
- .build());
+ tester.qGates().service().createCondition(new CreateConditionRequest()
+ .setGateId(String.valueOf(qualityGate.getId()))
+ .setMetric("security_rating")
+ .setOp("GT")
+ .setWarning("3"));
ItUtils.restoreProfile(orchestrator, getClass().getResource("/qualityGate/QualityGateOnRatingMeasuresTest/with-many-rules.xml"));
orchestrator.getServer().associateProjectToQualityProfile(project.getKey(), "xoo", "with-many-rules");
@@ -65,17 +64,16 @@ public class QualityGateOnRatingMeasuresTest {
@Test
public void generate_error_qgate_on_rating_metric_on_leak_period() throws Exception {
- Project project = tester.projects().generate(null);
- WsQualityGates.CreateWsResponse qualityGate = tester.qGates().generate();
+ Project project = tester.projects().provision();
+ Qualitygates.CreateWsResponse qualityGate = tester.qGates().generate();
tester.qGates().associateProject(qualityGate, project);
tester.settings().setGlobalSetting("sonar.leak.period", "previous_version");
- tester.wsClient().qualityGates().createCondition(CreateConditionRequest.builder()
- .setQualityGateId(qualityGate.getId())
- .setMetricKey("new_security_rating")
- .setOperator("GT")
+ tester.wsClient().qualityGates().createCondition(new CreateConditionRequest()
+ .setGateId(String.valueOf(qualityGate.getId()))
+ .setMetric("new_security_rating")
+ .setOp("GT")
.setError("3")
- .setPeriod(1)
- .build());
+ .setPeriod("1"));
// Run first analysis with empty quality gate -> quality gate is green
orchestrator.getServer().associateProjectToQualityProfile(project.getKey(), "xoo", "empty");
@@ -89,7 +87,7 @@ public class QualityGateOnRatingMeasuresTest {
assertThat(getGateStatusMeasure(project).getValue()).isEqualTo("ERROR");
}
- private WsMeasures.Measure getGateStatusMeasure(Project project) {
+ private Measures.Measure getGateStatusMeasure(Project project) {
return getMeasure(orchestrator, project.getKey(), "alert_status");
}
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateTest.java b/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateTest.java
index a88574e4866..f4c931997ed 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateTest.java
@@ -44,23 +44,24 @@ import org.sonar.wsclient.qualitygate.QualityGate;
import org.sonar.wsclient.qualitygate.QualityGateClient;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.qa.util.TesterSession;
+import org.sonarqube.ws.Ce;
import org.sonarqube.ws.MediaTypes;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.WsCe;
-import org.sonarqube.ws.WsMeasures.Measure;
-import org.sonarqube.ws.WsProjects.CreateWsResponse.Project;
-import org.sonarqube.ws.WsQualityGates;
-import org.sonarqube.ws.WsQualityGates.ProjectStatusWsResponse;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Measures.Measure;
+import org.sonarqube.ws.Projects.CreateWsResponse.Project;
+import org.sonarqube.ws.Qualitygates;
+import org.sonarqube.ws.Qualitygates.ProjectStatusWsResponse;
+import org.sonarqube.ws.Users;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.WsResponse;
import org.sonarqube.ws.client.permission.AddUserWsRequest;
-import org.sonarqube.ws.client.qualitygate.CreateConditionRequest;
-import org.sonarqube.ws.client.qualitygate.ProjectStatusWsRequest;
-import org.sonarqube.ws.client.qualitygate.QualityGatesService;
-import org.sonarqube.ws.client.qualitygate.SelectWsRequest;
-import org.sonarqube.ws.client.qualitygate.UpdateConditionRequest;
+import org.sonarqube.ws.client.qualitygates.CreateConditionRequest;
+import org.sonarqube.ws.client.qualitygates.CreateRequest;
+import org.sonarqube.ws.client.qualitygates.ProjectStatusRequest;
+import org.sonarqube.ws.client.qualitygates.QualitygatesService;
+import org.sonarqube.ws.client.qualitygates.SelectRequest;
+import org.sonarqube.ws.client.qualitygates.UpdateConditionRequest;
import static org.apache.commons.lang.RandomStringUtils.randomAlphabetic;
import static org.assertj.core.api.Assertions.assertThat;
@@ -246,7 +247,7 @@ public class QualityGateTest {
String taskId = getTaskIdInLocalReport(projectDir("qualitygate/xoo-sample"));
String analysisId = getAnalysisId(taskId);
- ProjectStatusWsResponse projectStatusWsResponse = tester.wsClient().qualityGates().projectStatus(new ProjectStatusWsRequest().setAnalysisId(analysisId));
+ ProjectStatusWsResponse projectStatusWsResponse = tester.wsClient().qualityGates().projectStatus(new ProjectStatusRequest().setAnalysisId(analysisId));
ProjectStatusWsResponse.ProjectStatus projectStatus = projectStatusWsResponse.getProjectStatus();
assertThat(projectStatus.getStatus()).isEqualTo(ProjectStatusWsResponse.Status.ERROR);
assertThat(projectStatus.getConditionsCount()).isEqualTo(1);
@@ -261,7 +262,7 @@ public class QualityGateTest {
@Test
public void does_not_fail_when_condition_is_on_removed_metric() throws Exception {
// create project
- Project project = tester.projects().generate(null);
+ Project project = tester.projects().provision();
String projectKey = project.getKey();
// create custom metric
@@ -269,7 +270,7 @@ public class QualityGateTest {
createCustomIntMetric(customMetricKey);
try {
// create quality gate
- WsQualityGates.CreateWsResponse simple = tester.wsClient().qualityGates().create("OnCustomMetric");
+ Qualitygates.CreateWsResponse simple = tester.wsClient().qualityGates().create(new CreateRequest().setName("OnCustomMetric"));
Long qualityGateId = simple.getId();
qgClient().createCondition(NewCondition.create(qualityGateId).metricKey(customMetricKey).operator("GT").warningThreshold("40"));
@@ -277,7 +278,7 @@ public class QualityGateTest {
deleteCustomMetric(customMetricKey);
// run analysis
- tester.wsClient().qualityGates().associateProject(new SelectWsRequest().setProjectKey(projectKey).setGateId(qualityGateId));
+ tester.wsClient().qualityGates().select(new SelectRequest().setProjectKey(projectKey).setGateId(String.valueOf(qualityGateId)));
BuildResult buildResult = executeAnalysis(projectKey);
// verify quality gate
@@ -292,16 +293,16 @@ public class QualityGateTest {
public void administrate_quality_gate_with_gateadmin_permission() {
// user is quality gate admin of default organization
Organization organization = tester.organizations().getDefaultOrganization();
- WsUsers.CreateWsResponse.User user = tester.users().generateMember(organization);
+ Users.CreateWsResponse.User user = tester.users().generateMember(organization);
tester.wsClient().permissions().addUser(new AddUserWsRequest().setLogin(user.getLogin()).setPermission("gateadmin").setOrganization(organization.getKey()));
TesterSession qGateAdminTester = tester.as(user.getLogin());
- QualityGatesService qGateService = qGateAdminTester.qGates().service();
+ QualitygatesService qGateService = qGateAdminTester.qGates().service();
// perform administration operations
- WsQualityGates.CreateWsResponse qualityGate = qGateAdminTester.qGates().generate();
- WsQualityGates.CreateConditionWsResponse condition = qGateService.createCondition(CreateConditionRequest.builder()
- .setQualityGateId(qualityGate.getId()).setMetricKey("coverage").setOperator("LT").setError("90").build());
- qGateService.updateCondition(UpdateConditionRequest.builder()
- .setConditionId(condition.getId()).setMetricKey("coverage").setOperator("LT").setError("90").setWarning("80").build());
+ Qualitygates.CreateWsResponse qualityGate = qGateAdminTester.qGates().generate();
+ Qualitygates.CreateConditionWsResponse condition = qGateService.createCondition(new CreateConditionRequest()
+ .setGateId(String.valueOf(qualityGate.getId())).setMetric("coverage").setOp("LT").setError("90"));
+ qGateService.updateCondition(new UpdateConditionRequest()
+ .setId(String.valueOf(condition.getId())).setMetric("coverage").setOp("LT").setError("90").setWarning("80"));
qGateAdminTester.wsClient().wsConnector().call(new PostRequest("api/qualitygates/set_as_default").setParam("id", qualityGate.getId()));
qGateAdminTester.wsClient().wsConnector().call(new PostRequest("api/qualitygates/delete_condition").setParam("id", condition.getId()));
qGateAdminTester.wsClient().wsConnector().call(new PostRequest("api/qualitygates/unset_default").setParam("id", qualityGate.getId()));
@@ -330,7 +331,7 @@ public class QualityGateTest {
.call(new GetRequest("api/ce/task")
.setParam("id", taskId)
.setMediaType(MediaTypes.PROTOBUF));
- WsCe.TaskResponse activityWsResponse = WsCe.TaskResponse.parseFrom(activity.contentStream());
+ Ce.TaskResponse activityWsResponse = Ce.TaskResponse.parseFrom(activity.contentStream());
return activityWsResponse.getTask().getAnalysisId();
}
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateUiTest.java b/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateUiTest.java
index 9c9dc04617c..9d7a4b52765 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateUiTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityGate/QualityGateUiTest.java
@@ -34,10 +34,10 @@ import org.openqa.selenium.By;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.qa.util.pageobjects.Navigation;
import org.sonarqube.qa.util.pageobjects.ProjectActivityPage;
-import org.sonarqube.ws.WsProjects.CreateWsResponse.Project;
-import org.sonarqube.ws.WsQualityGates;
-import org.sonarqube.ws.client.qualitygate.CreateConditionRequest;
-import org.sonarqube.ws.client.qualitygate.UpdateConditionRequest;
+import org.sonarqube.ws.Projects.CreateWsResponse.Project;
+import org.sonarqube.ws.Qualitygates;
+import org.sonarqube.ws.client.qualitygates.CreateConditionRequest;
+import org.sonarqube.ws.client.qualitygates.UpdateConditionRequest;
import static com.codeborne.selenide.Selenide.$;
import static org.apache.commons.lang.time.DateUtils.addDays;
@@ -65,19 +65,19 @@ public class QualityGateUiTest {
*/
@Test
public void display_alerts_correctly_in_history_page() {
- Project project = tester.projects().generate(null);
- WsQualityGates.CreateWsResponse qGate = tester.qGates().generate();
+ Project project = tester.projects().provision();
+ Qualitygates.CreateWsResponse qGate = tester.qGates().generate();
tester.qGates().associateProject(qGate, project);
String firstAnalysisDate = DateFormatUtils.ISO_DATE_FORMAT.format(addDays(new Date(), -2));
String secondAnalysisDate = DateFormatUtils.ISO_DATE_FORMAT.format(addDays(new Date(), -1));
// with this configuration, project should have an Orange alert
- WsQualityGates.CreateConditionWsResponse lowThresholds = tester.qGates().service()
- .createCondition(CreateConditionRequest.builder().setQualityGateId(qGate.getId()).setMetricKey("lines").setOperator("GT").setWarning("5").setError("50").build());
+ Qualitygates.CreateConditionWsResponse lowThresholds = tester.qGates().service()
+ .createCondition(new CreateConditionRequest().setGateId(String.valueOf(qGate.getId())).setMetric("lines").setOp("GT").setWarning("5").setError("50"));
scanSampleWithDate(project, firstAnalysisDate);
// with this configuration, project should have a Green alert
- tester.qGates().service().updateCondition(UpdateConditionRequest.builder().setConditionId(lowThresholds.getId()).setMetricKey("lines").setOperator("GT").setWarning("5000").setError("5000").build());
+ tester.qGates().service().updateCondition(new UpdateConditionRequest().setId(String.valueOf(lowThresholds.getId())).setMetric("lines").setOp("GT").setWarning("5000").setError("5000"));
scanSampleWithDate(project, secondAnalysisDate);
Navigation nav = Navigation.create(orchestrator);
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityModel/ReliabilityMeasureTest.java b/tests/src/test/java/org/sonarqube/tests/qualityModel/ReliabilityMeasureTest.java
index 349acb7aa46..436e13aa976 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityModel/ReliabilityMeasureTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityModel/ReliabilityMeasureTest.java
@@ -27,7 +27,7 @@ import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsMeasures;
+import org.sonarqube.ws.Measures;
import util.ItUtils;
import static java.lang.Double.parseDouble;
@@ -83,7 +83,7 @@ public class ReliabilityMeasureTest {
}
private void assertMeasures(String componentKey, int expectedBugs, int expectedReliabilityRemediationEffort, int expectedReliabilityRating) {
- Map<String, WsMeasures.Measure> measures = getMeasuresByMetricKey(orchestrator, componentKey, METRICS);
+ Map<String, Measures.Measure> measures = getMeasuresByMetricKey(orchestrator, componentKey, METRICS);
assertThat(parseDouble(measures.get(BUGS_METRIC).getValue())).isEqualTo(expectedBugs);
assertThat(parseDouble(measures.get(RELIABILITY_REMEDIATION_EFFORT_METRIC).getValue())).isEqualTo(expectedReliabilityRemediationEffort);
assertThat(parseDouble(measures.get(RELIABILITY_RATING_METRIC).getValue())).isEqualTo(expectedReliabilityRating);
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityModel/SecurityMeasureTest.java b/tests/src/test/java/org/sonarqube/tests/qualityModel/SecurityMeasureTest.java
index f8c2d6cd367..c3feea005fd 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityModel/SecurityMeasureTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityModel/SecurityMeasureTest.java
@@ -27,7 +27,7 @@ import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsMeasures;
+import org.sonarqube.ws.Measures;
import util.ItUtils;
import static java.lang.Double.parseDouble;
@@ -83,7 +83,7 @@ public class SecurityMeasureTest {
}
private void assertMeasures(String componentKey, int expectedVulnerabilities, int expectedReliabilityRemediationEffort, int expectedReliabilityRating) {
- Map<String, WsMeasures.Measure> measures = getMeasuresByMetricKey(orchestrator, componentKey, METRICS);
+ Map<String, Measures.Measure> measures = getMeasuresByMetricKey(orchestrator, componentKey, METRICS);
assertThat(parseDouble(measures.get(VULNERABILITIES_METRIC).getValue())).isEqualTo(expectedVulnerabilities);
assertThat(parseDouble(measures.get(SECURITY_REMEDIATION_EFFORT_METRIC).getValue())).isEqualTo(expectedReliabilityRemediationEffort);
assertThat(parseDouble(measures.get(SECURITY_RATING_METRIC).getValue())).isEqualTo(expectedReliabilityRating);
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityProfile/ActiveRuleEsResilienceTest.java b/tests/src/test/java/org/sonarqube/tests/qualityProfile/ActiveRuleEsResilienceTest.java
index 0f71864996a..efd0562727b 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityProfile/ActiveRuleEsResilienceTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityProfile/ActiveRuleEsResilienceTest.java
@@ -32,7 +32,7 @@ import org.junit.rules.Timeout;
import org.sonarqube.tests.Byteman;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations;
-import org.sonarqube.ws.QualityProfiles;
+import org.sonarqube.ws.Qualityprofiles;
import org.sonarqube.ws.client.rule.SearchWsRequest;
import util.ItUtils;
@@ -78,7 +78,7 @@ public class ActiveRuleEsResilienceTest {
@Test
public void activation_and_deactivation_of_rule_is_resilient_to_indexing_errors() throws Exception {
Organizations.Organization organization = tester.organizations().generate();
- QualityProfiles.CreateWsResponse.QualityProfile profile = tester.qProfiles().createXooProfile(organization);
+ Qualityprofiles.CreateWsResponse.QualityProfile profile = tester.qProfiles().createXooProfile(organization);
// step 1. activation
tester.qProfiles().activateRule(profile.getKey(), RULE_ONE_BUG_PER_LINE);
@@ -99,7 +99,7 @@ public class ActiveRuleEsResilienceTest {
assertThat(searchActiveRules(profile)).isEqualTo(0);
}
- private long searchActiveRules(QualityProfiles.CreateWsResponse.QualityProfile profile) {
+ private long searchActiveRules(Qualityprofiles.CreateWsResponse.QualityProfile profile) {
SearchWsRequest request = new SearchWsRequest().setActivation(true).setQProfile(profile.getKey());
return tester.wsClient().rules().search(request).getRulesCount();
}
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityProfile/BuiltInQualityProfilesNotificationTest.java b/tests/src/test/java/org/sonarqube/tests/qualityProfile/BuiltInQualityProfilesNotificationTest.java
index ffd7d24bac2..3922d96b29c 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityProfile/BuiltInQualityProfilesNotificationTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityProfile/BuiltInQualityProfilesNotificationTest.java
@@ -28,7 +28,7 @@ import javax.mail.internet.MimeMessage;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Users;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.WsClient;
import org.sonarqube.ws.client.permission.AddGroupWsRequest;
@@ -75,7 +75,7 @@ public class BuiltInQualityProfilesNotificationTest {
.build();
orchestrator.start();
userRule = UserRule.from(orchestrator);
- WsUsers.CreateWsResponse.User profileAdmin1 = userRule.generate();
+ Users.CreateWsResponse.User profileAdmin1 = userRule.generate();
WsClient wsClient = ItUtils.newAdminWsClient(orchestrator);
wsClient.permissions().addUser(new AddUserWsRequest().setLogin(profileAdmin1.getLogin()).setPermission("profileadmin"));
@@ -98,17 +98,17 @@ public class BuiltInQualityProfilesNotificationTest {
userRule = UserRule.from(orchestrator);
// Create a quality profile administrator (user having direct permission)
- WsUsers.CreateWsResponse.User profileAdmin1 = userRule.generate();
+ Users.CreateWsResponse.User profileAdmin1 = userRule.generate();
WsClient wsClient = ItUtils.newAdminWsClient(orchestrator);
wsClient.permissions().addUser(new AddUserWsRequest().setLogin(profileAdmin1.getLogin()).setPermission("profileadmin"));
// Create a quality profile administrator (user having permission from a group)
- WsUsers.CreateWsResponse.User profileAdmin2 = userRule.generate();
+ Users.CreateWsResponse.User profileAdmin2 = userRule.generate();
String groupName = randomAlphanumeric(20);
wsClient.wsConnector().call(new PostRequest("api/user_groups/create").setParam("name", groupName)).failIfNotSuccessful();
wsClient.permissions().addGroup(new AddGroupWsRequest().setPermission("profileadmin").setGroupName(groupName));
wsClient.wsConnector().call(new PostRequest("api/user_groups/add_user").setParam("name", groupName).setParam("login", profileAdmin2.getLogin())).failIfNotSuccessful();
// Create a user not being quality profile administrator
- WsUsers.CreateWsResponse.User noProfileAdmin = userRule.generate();
+ Users.CreateWsResponse.User noProfileAdmin = userRule.generate();
// Create a child profile on the built-in profile => The notification should not take into account updates of this profile
wsClient.qualityProfiles().create(CreateRequest.builder().setLanguage("foo").setName("child").build());
@@ -154,7 +154,7 @@ public class BuiltInQualityProfilesNotificationTest {
.build();
orchestrator.start();
userRule = UserRule.from(orchestrator);
- WsUsers.CreateWsResponse.User profileAdmin1 = userRule.generate();
+ Users.CreateWsResponse.User profileAdmin1 = userRule.generate();
WsClient wsClient = ItUtils.newAdminWsClient(orchestrator);
wsClient.permissions().addUser(new AddUserWsRequest().setLogin(profileAdmin1.getLogin()).setPermission("profileadmin"));
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityProfile/BuiltInQualityProfilesTest.java b/tests/src/test/java/org/sonarqube/tests/qualityProfile/BuiltInQualityProfilesTest.java
index 7b255b78940..2ace14e222a 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityProfile/BuiltInQualityProfilesTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityProfile/BuiltInQualityProfilesTest.java
@@ -28,11 +28,11 @@ import org.sonarqube.tests.Category6Suite;
import org.sonarqube.qa.util.TesterSession;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.QualityProfiles;
-import org.sonarqube.ws.QualityProfiles.CreateWsResponse;
-import org.sonarqube.ws.QualityProfiles.SearchWsResponse;
-import org.sonarqube.ws.QualityProfiles.SearchWsResponse.QualityProfile;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Qualityprofiles;
+import org.sonarqube.ws.Qualityprofiles.CreateWsResponse;
+import org.sonarqube.ws.Qualityprofiles.SearchWsResponse;
+import org.sonarqube.ws.Qualityprofiles.SearchWsResponse.QualityProfile;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.qualityprofile.ChangeParentRequest;
import org.sonarqube.ws.client.qualityprofile.CopyRequest;
import org.sonarqube.ws.client.qualityprofile.QualityProfilesService;
@@ -112,7 +112,7 @@ public class BuiltInQualityProfilesTest {
QualityProfile builtInProfile = getProfile(org, p -> p.getIsBuiltIn() && "Basic".equals(p.getName()) && "xoo".equals(p.getLanguage()));
TesterSession adminSession = tester.as(administrator.getLogin());
- QualityProfiles.CopyWsResponse copyResponse = adminSession.qProfiles().service().copy(new CopyRequest(builtInProfile.getKey(), "My copy"));
+ Qualityprofiles.CopyWsResponse copyResponse = adminSession.qProfiles().service().copy(new CopyRequest(builtInProfile.getKey(), "My copy"));
assertThat(copyResponse.getIsDefault()).isFalse();
assertThat(copyResponse.getKey()).isNotEmpty().isNotEqualTo(builtInProfile.getKey());
@@ -134,7 +134,7 @@ public class BuiltInQualityProfilesTest {
QualityProfile builtInProfile = getProfile(org, p -> p.getIsBuiltIn() && "Basic".equals(p.getName()) && "xoo".equals(p.getLanguage()));
TesterSession adminSession = tester.as(administrator.getLogin());
- QualityProfiles.CopyWsResponse copyResponse = adminSession.qProfiles().service().copy(new CopyRequest(builtInProfile.getKey(), "My copy"));
+ Qualityprofiles.CopyWsResponse copyResponse = adminSession.qProfiles().service().copy(new CopyRequest(builtInProfile.getKey(), "My copy"));
adminSession.qProfiles().service().changeParent(
ChangeParentRequest.builder().setParentKey(builtInProfile.getKey()).setProfileKey(copyResponse.getKey()).build());
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityProfile/CustomQualityProfilesTest.java b/tests/src/test/java/org/sonarqube/tests/qualityProfile/CustomQualityProfilesTest.java
index 84974475261..fe00a8d4472 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityProfile/CustomQualityProfilesTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityProfile/CustomQualityProfilesTest.java
@@ -32,9 +32,9 @@ import org.sonarqube.qa.util.QProfileTester;
import org.sonarqube.qa.util.TesterSession;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.QualityProfiles;
-import org.sonarqube.ws.QualityProfiles.CreateWsResponse.QualityProfile;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Qualityprofiles;
+import org.sonarqube.ws.Qualityprofiles.CreateWsResponse.QualityProfile;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.qualityprofile.AddProjectRequest;
@@ -125,8 +125,8 @@ public class CustomQualityProfilesTest {
QualityProfile parentProfile = adminSession.createXooProfile(org);
// Copied profile
- QualityProfiles.SearchWsResponse.QualityProfile builtInProfile = getProfile(org, p -> p.getIsBuiltIn() && "Basic".equals(p.getName()) && "xoo".equals(p.getLanguage()));
- QualityProfiles.CopyWsResponse copyResponse = adminSession.service().copy(new CopyRequest(builtInProfile.getKey(), "My copy"));
+ Qualityprofiles.SearchWsResponse.QualityProfile builtInProfile = getProfile(org, p -> p.getIsBuiltIn() && "Basic".equals(p.getName()) && "xoo".equals(p.getLanguage()));
+ Qualityprofiles.CopyWsResponse copyResponse = adminSession.service().copy(new CopyRequest(builtInProfile.getKey(), "My copy"));
// Inherited profile from custom
QualityProfile inheritedProfile1 = adminSession.service().create(
@@ -230,7 +230,7 @@ public class CustomQualityProfilesTest {
adminSession.qProfiles().service().changeParent(
ChangeParentRequest.builder().setParentKey(parentProfile.getKey()).setProfileKey(inheritedProfile.getKey()).build());
- QualityProfiles.SearchWsResponse.QualityProfile inheritedQualityPropfile = getProfile(org, p -> p.getKey().equals(inheritedProfile.getKey()));
+ Qualityprofiles.SearchWsResponse.QualityProfile inheritedQualityPropfile = getProfile(org, p -> p.getKey().equals(inheritedProfile.getKey()));
assertThat(inheritedQualityPropfile.getParentKey()).isEqualTo(parentProfile.getKey());
assertThat(inheritedQualityPropfile.getParentName()).isEqualTo(parentProfile.getName());
@@ -262,7 +262,7 @@ public class CustomQualityProfilesTest {
.setProjectKey(projectKey)
.setProjectName(projectName));
- QualityProfiles.SearchWsResponse.QualityProfile defaultProfile = getProfile(org, p -> "xoo".equals(p.getLanguage()) &&
+ Qualityprofiles.SearchWsResponse.QualityProfile defaultProfile = getProfile(org, p -> "xoo".equals(p.getLanguage()) &&
p.getIsDefault());
assertThatQualityProfileIsUsedFor(projectKey, defaultProfile.getKey());
@@ -318,7 +318,7 @@ public class CustomQualityProfilesTest {
assertThat(((Map) ((List) components.get("qualityProfiles")).get(0)).get("key")).isEqualTo(qualityProfileKey);
}
- private QualityProfiles.SearchWsResponse.QualityProfile getProfile(Organization organization, Predicate<QualityProfiles.SearchWsResponse.QualityProfile> filter) {
+ private Qualityprofiles.SearchWsResponse.QualityProfile getProfile(Organization organization, Predicate<Qualityprofiles.SearchWsResponse.QualityProfile> filter) {
return tester.qProfiles().service().search(new SearchWsRequest()
.setOrganizationKey(organization.getKey())).getProfilesList()
.stream()
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityProfile/OrganizationQualityProfilesUiTest.java b/tests/src/test/java/org/sonarqube/tests/qualityProfile/OrganizationQualityProfilesUiTest.java
index cf156acee16..48470073a6b 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityProfile/OrganizationQualityProfilesUiTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityProfile/OrganizationQualityProfilesUiTest.java
@@ -32,8 +32,8 @@ import org.sonarqube.qa.util.pageobjects.QualityProfilePage;
import org.sonarqube.qa.util.pageobjects.RulesPage;
import org.sonarqube.tests.Category6Suite;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.QualityProfiles;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Qualityprofiles;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.qualityprofile.AddProjectRequest;
import org.sonarqube.ws.client.qualityprofile.ChangeParentRequest;
@@ -151,7 +151,7 @@ public class OrganizationQualityProfilesUiTest {
@Test
public void testSonarWayComparison() {
- QualityProfiles.CreateWsResponse.QualityProfile xooProfile = tester.qProfiles().createXooProfile(organization);
+ Qualityprofiles.CreateWsResponse.QualityProfile xooProfile = tester.qProfiles().createXooProfile(organization);
tester.qProfiles().activateRule(xooProfile, "xoo:OneBugIssuePerLine");
tester.qProfiles().activateRule(xooProfile, "xoo:OneIssuePerLine");
Navigation nav = tester.openBrowser();
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityProfile/QualityProfilesEditTest.java b/tests/src/test/java/org/sonarqube/tests/qualityProfile/QualityProfilesEditTest.java
index 142fd1d2dff..b6e884eaa77 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityProfile/QualityProfilesEditTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityProfile/QualityProfilesEditTest.java
@@ -28,12 +28,12 @@ import org.sonarqube.tests.Category6Suite;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Common;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.QualityProfiles.CreateWsResponse;
-import org.sonarqube.ws.QualityProfiles.SearchGroupsResponse;
-import org.sonarqube.ws.QualityProfiles.SearchUsersResponse;
-import org.sonarqube.ws.QualityProfiles.SearchWsResponse;
-import org.sonarqube.ws.WsUserGroups;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Qualityprofiles.CreateWsResponse;
+import org.sonarqube.ws.Qualityprofiles.SearchGroupsResponse;
+import org.sonarqube.ws.Qualityprofiles.SearchUsersResponse;
+import org.sonarqube.ws.Qualityprofiles.SearchWsResponse;
+import org.sonarqube.ws.UserGroups;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.permission.AddUserWsRequest;
import org.sonarqube.ws.client.qualityprofile.AddGroupRequest;
@@ -47,7 +47,7 @@ import org.sonarqube.ws.client.qualityprofile.ShowRequest;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.tuple;
-import static org.sonarqube.ws.QualityProfiles.SearchGroupsResponse.Group;
+import static org.sonarqube.ws.Qualityprofiles.SearchGroupsResponse.Group;
public class QualityProfilesEditTest {
private static final String RULE_ONE_BUG_PER_LINE = "xoo:OneBugIssuePerLine";
@@ -132,9 +132,9 @@ public class QualityProfilesEditTest {
@Test
public void search_groups_allowed_to_edit_a_profile() {
Organization organization = tester.organizations().generate();
- WsUserGroups.Group group1 = tester.groups().generate(organization);
- WsUserGroups.Group group2 = tester.groups().generate(organization);
- WsUserGroups.Group group3 = tester.groups().generate(organization);
+ UserGroups.Group group1 = tester.groups().generate(organization);
+ UserGroups.Group group2 = tester.groups().generate(organization);
+ UserGroups.Group group3 = tester.groups().generate(organization);
CreateWsResponse.QualityProfile xooProfile = tester.qProfiles().createXooProfile(organization);
addGroupPermission(organization, group1, xooProfile);
addGroupPermission(organization, group2, xooProfile);
@@ -156,8 +156,8 @@ public class QualityProfilesEditTest {
@Test
public void add_and_remove_group() {
Organization organization = tester.organizations().generate();
- WsUserGroups.Group group1 = tester.groups().generate(organization);
- WsUserGroups.Group group2 = tester.groups().generate(organization);
+ UserGroups.Group group1 = tester.groups().generate(organization);
+ UserGroups.Group group2 = tester.groups().generate(organization);
CreateWsResponse.QualityProfile xooProfile = tester.qProfiles().createXooProfile(organization);
// No group added
@@ -205,7 +205,7 @@ public class QualityProfilesEditTest {
CreateWsResponse.QualityProfile xooProfile1 = tester.qProfiles().createXooProfile(organization);
addUserPermission(organization, user, xooProfile1);
CreateWsResponse.QualityProfile xooProfile2 = tester.qProfiles().createXooProfile(organization);
- WsUserGroups.Group group = tester.groups().generate(organization);
+ UserGroups.Group group = tester.groups().generate(organization);
tester.groups().addMemberToGroups(organization, user.getLogin(), group.getName());
addGroupPermission(organization, group, xooProfile2);
CreateWsResponse.QualityProfile xooProfile3 = tester.qProfiles().createXooProfile(organization);
@@ -243,7 +243,7 @@ public class QualityProfilesEditTest {
CreateWsResponse.QualityProfile xooProfile = tester.qProfiles().createXooProfile(org);
User individualEditor = tester.users().generateMember(org);
addUserPermission(org, individualEditor, xooProfile);
- WsUserGroups.Group group = tester.groups().generate(org);
+ UserGroups.Group group = tester.groups().generate(org);
addGroupPermission(org, group, xooProfile);
User groupEditor = tester.users().generateMember(org);
tester.groups().addMemberToGroups(org, groupEditor.getLogin(), group.getName());
@@ -275,7 +275,7 @@ public class QualityProfilesEditTest {
.build());
}
- private void addGroupPermission(Organization organization, WsUserGroups.Group group, CreateWsResponse.QualityProfile qProfile) {
+ private void addGroupPermission(Organization organization, UserGroups.Group group, CreateWsResponse.QualityProfile qProfile) {
tester.qProfiles().service().addGroup(AddGroupRequest.builder()
.setOrganization(organization.getKey())
.setQualityProfile(qProfile.getName())
diff --git a/tests/src/test/java/org/sonarqube/tests/qualityProfile/QualityProfilesWsTest.java b/tests/src/test/java/org/sonarqube/tests/qualityProfile/QualityProfilesWsTest.java
index 4e121520117..21b319f6f78 100644
--- a/tests/src/test/java/org/sonarqube/tests/qualityProfile/QualityProfilesWsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/qualityProfile/QualityProfilesWsTest.java
@@ -30,11 +30,11 @@ import org.skyscreamer.jsonassert.JSONCompareMode;
import org.sonarqube.tests.Category6Suite;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.QualityProfiles.CreateWsResponse;
-import org.sonarqube.ws.QualityProfiles.SearchWsResponse;
-import org.sonarqube.ws.QualityProfiles.ShowResponse;
-import org.sonarqube.ws.QualityProfiles.ShowResponse.CompareToSonarWay;
-import org.sonarqube.ws.QualityProfiles.ShowResponse.QualityProfile;
+import org.sonarqube.ws.Qualityprofiles.CreateWsResponse;
+import org.sonarqube.ws.Qualityprofiles.SearchWsResponse;
+import org.sonarqube.ws.Qualityprofiles.ShowResponse;
+import org.sonarqube.ws.Qualityprofiles.ShowResponse.CompareToSonarWay;
+import org.sonarqube.ws.Qualityprofiles.ShowResponse.QualityProfile;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.WsResponse;
diff --git a/tests/src/test/java/org/sonarqube/tests/rule/RulesWsTest.java b/tests/src/test/java/org/sonarqube/tests/rule/RulesWsTest.java
index 77aca9652f4..33469fb6577 100644
--- a/tests/src/test/java/org/sonarqube/tests/rule/RulesWsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/rule/RulesWsTest.java
@@ -28,8 +28,8 @@ import org.junit.Test;
import org.sonarqube.tests.Category6Suite;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.ws.Organizations.Organization;
-import org.sonarqube.ws.QualityProfiles.CreateWsResponse;
-import org.sonarqube.ws.QualityProfiles.SearchWsResponse;
+import org.sonarqube.ws.Qualityprofiles.CreateWsResponse;
+import org.sonarqube.ws.Qualityprofiles.SearchWsResponse;
import org.sonarqube.ws.Rules;
import org.sonarqube.ws.client.rule.SearchWsRequest;
diff --git a/tests/src/test/java/org/sonarqube/tests/serverSystem/RestartTest.java b/tests/src/test/java/org/sonarqube/tests/serverSystem/RestartTest.java
index 33e61642c79..e1219ae9ee6 100644
--- a/tests/src/test/java/org/sonarqube/tests/serverSystem/RestartTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/serverSystem/RestartTest.java
@@ -29,7 +29,7 @@ import org.junit.rules.DisableOnDebug;
import org.junit.rules.ExpectedException;
import org.junit.rules.TestRule;
import org.junit.rules.Timeout;
-import org.sonarqube.ws.WsSystem;
+import org.sonarqube.ws.System;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.WsClient;
import org.sonarqube.ws.client.permission.AddUserWsRequest;
@@ -75,7 +75,7 @@ public class RestartTest {
createSystemAdministrator("big", "boss");
ItUtils.newUserWsClient(orchestrator, "big", "boss").system().restart();
- assertThat(newAdminWsClient(orchestrator).system().status().getStatus()).isEqualTo(WsSystem.Status.RESTARTING);
+ assertThat(newAdminWsClient(orchestrator).system().status().getStatus()).isEqualTo(System.Status.RESTARTING);
// we just wait five seconds, for a lack of a better approach to waiting for the restart process to start in SQ
Thread.sleep(5000);
diff --git a/tests/src/test/java/org/sonarqube/tests/serverSystem/ServerSystemRestartingOrchestrator.java b/tests/src/test/java/org/sonarqube/tests/serverSystem/ServerSystemRestartingOrchestrator.java
index cd4e2c1ac78..ac641140873 100644
--- a/tests/src/test/java/org/sonarqube/tests/serverSystem/ServerSystemRestartingOrchestrator.java
+++ b/tests/src/test/java/org/sonarqube/tests/serverSystem/ServerSystemRestartingOrchestrator.java
@@ -27,7 +27,7 @@ import org.junit.After;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
-import org.sonarqube.ws.WsSystem;
+import org.sonarqube.ws.System;
import util.ItUtils;
import static org.assertj.core.api.Assertions.assertThat;
@@ -77,7 +77,7 @@ public class ServerSystemRestartingOrchestrator {
.build();
orchestrator.start();
- assertThat(newAdminWsClient(orchestrator).system().status().getStatus()).isEqualTo(WsSystem.Status.UP);
+ assertThat(newAdminWsClient(orchestrator).system().status().getStatus()).isEqualTo(System.Status.UP);
}
// SONAR-4748
diff --git a/tests/src/test/java/org/sonarqube/tests/serverSystem/ServerSystemTest.java b/tests/src/test/java/org/sonarqube/tests/serverSystem/ServerSystemTest.java
index 2e70f4e5c18..22d69666e24 100644
--- a/tests/src/test/java/org/sonarqube/tests/serverSystem/ServerSystemTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/serverSystem/ServerSystemTest.java
@@ -32,7 +32,7 @@ import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.tests.Category4Suite;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsSystem;
+import org.sonarqube.ws.System;
import util.ItUtils;
import util.selenium.Selenese;
@@ -58,7 +58,7 @@ public class ServerSystemTest {
@Test
public void get_sonarqube_version() {
- WsSystem.StatusResponse response = tester.wsClient().system().status();
+ System.StatusResponse response = tester.wsClient().system().status();
String version = response.getVersion();
if (!startsWithAny(version, new String[]{"6.", "7.", "8."})) {
diff --git a/tests/src/test/java/org/sonarqube/tests/serverSystem/SystemStateTest.java b/tests/src/test/java/org/sonarqube/tests/serverSystem/SystemStateTest.java
index 62985921e4a..5edd77875a1 100644
--- a/tests/src/test/java/org/sonarqube/tests/serverSystem/SystemStateTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/serverSystem/SystemStateTest.java
@@ -36,7 +36,7 @@ import org.junit.rules.TemporaryFolder;
import org.junit.rules.TestRule;
import org.junit.rules.Timeout;
import org.sonarqube.qa.util.Elasticsearch;
-import org.sonarqube.ws.WsSystem;
+import org.sonarqube.ws.System;
import org.sonarqube.ws.client.WsClient;
import static com.google.common.base.Preconditions.checkState;
@@ -64,17 +64,17 @@ public class SystemStateTest {
commander.start(lock);
commander.waitFor(() -> commander.webLogsContain("ServerStartupLock - Waiting for file to be deleted"));
- commander.verifyStatus(WsSystem.Status.STARTING);
- commander.verifyHealth(WsSystem.Health.RED, "SonarQube webserver is not up");
+ commander.verifyStatus(System.Status.STARTING);
+ commander.verifyHealth(System.Health.RED, "SonarQube webserver is not up");
lock.unlockWeb();
// status is UP as soon as web server is up, whatever the status of Compute Engine
- commander.waitFor(() -> WsSystem.Status.UP == commander.status().orElse(null));
- commander.verifyHealth(WsSystem.Health.RED, "Compute Engine is not operational");
+ commander.waitFor(() -> System.Status.UP == commander.status().orElse(null));
+ commander.verifyHealth(System.Health.RED, "Compute Engine is not operational");
lock.unlockCe();
- commander.waitForHealth(WsSystem.Health.GREEN);
- commander.verifyStatus(WsSystem.Status.UP);
+ commander.waitForHealth(System.Health.GREEN);
+ commander.verifyStatus(System.Status.UP);
}
}
@@ -82,16 +82,16 @@ public class SystemStateTest {
public void test_status_and_health_when_ES_becomes_yellow() throws Exception {
try (Commander commander = new Commander()) {
commander.start();
- commander.waitForHealth(WsSystem.Health.GREEN);
+ commander.waitForHealth(System.Health.GREEN);
commander.makeElasticsearchYellow();
- commander.waitForHealth(WsSystem.Health.YELLOW, "Elasticsearch status is YELLOW");
- commander.verifyStatus(WsSystem.Status.UP);
+ commander.waitForHealth(System.Health.YELLOW, "Elasticsearch status is YELLOW");
+ commander.verifyStatus(System.Status.UP);
commander.makeElasticsearchGreen();
- commander.waitForHealth(WsSystem.Health.GREEN);
+ commander.waitForHealth(System.Health.GREEN);
// status does not change after being UP
- commander.verifyStatus(WsSystem.Status.UP);
+ commander.verifyStatus(System.Status.UP);
}
}
@@ -166,7 +166,7 @@ public class SystemStateTest {
}
}
- Optional<WsSystem.Status> status() {
+ Optional<System.Status> status() {
if (orchestrator.getServer() != null) {
WsClient wsClient = newWsClient(orchestrator);
try {
@@ -178,16 +178,16 @@ public class SystemStateTest {
return Optional.empty();
}
- void verifyStatus(WsSystem.Status expectedStatus) {
+ void verifyStatus(System.Status expectedStatus) {
assertThat(status()).hasValue(expectedStatus);
}
- Optional<WsSystem.Health> health() {
- Optional<WsSystem.HealthResponse> response = healthResponse();
- return response.map(WsSystem.HealthResponse::getHealth);
+ Optional<System.Health> health() {
+ Optional<System.HealthResponse> response = healthResponse();
+ return response.map(System.HealthResponse::getHealth);
}
- Optional<WsSystem.HealthResponse> healthResponse() {
+ Optional<System.HealthResponse> healthResponse() {
if (orchestrator.getServer() != null) {
WsClient wsClient = newSystemUserWsClient(orchestrator, systemPassCode);
try {
@@ -199,18 +199,18 @@ public class SystemStateTest {
return Optional.empty();
}
- void waitForHealth(WsSystem.Health expectedHealth, String... expectedMessages) {
+ void waitForHealth(System.Health expectedHealth, String... expectedMessages) {
waitFor(() -> expectedHealth == health().orElse(null));
verifyHealth(expectedHealth, expectedMessages);
}
- void verifyHealth(WsSystem.Health expectedHealth, String... expectedMessages) {
- WsSystem.HealthResponse response = healthResponse().get();
+ void verifyHealth(System.Health expectedHealth, String... expectedMessages) {
+ System.HealthResponse response = healthResponse().get();
assertThat(response.getHealth())
.describedAs("Expected status %s in response %s", expectedHealth, response)
.isEqualTo(expectedHealth);
assertThat(response.getCausesList())
- .extracting(WsSystem.Cause::getMessage)
+ .extracting(System.Cause::getMessage)
.describedAs("Expected causes %s in response %s", Arrays.asList(expectedMessages), response)
.containsExactlyInAnyOrder(expectedMessages);
}
diff --git a/tests/src/test/java/org/sonarqube/tests/settings/DeprecatedPropertiesWsTest.java b/tests/src/test/java/org/sonarqube/tests/settings/DeprecatedPropertiesWsTest.java
index 4a0bd037333..0448d8bac88 100644
--- a/tests/src/test/java/org/sonarqube/tests/settings/DeprecatedPropertiesWsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/settings/DeprecatedPropertiesWsTest.java
@@ -22,6 +22,7 @@ package org.sonarqube.tests.settings;
import com.google.common.base.Throwables;
import com.google.gson.Gson;
import com.sonar.orchestrator.Orchestrator;
+import org.junit.rules.RuleChain;
import org.sonarqube.tests.Category1Suite;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
@@ -69,8 +70,10 @@ public class DeprecatedPropertiesWsTest {
@ClassRule
public static Orchestrator orchestrator = Category1Suite.ORCHESTRATOR;
+ private static UserRule userRule = UserRule.from(orchestrator);
+
@ClassRule
- public static UserRule userRule = UserRule.from(orchestrator);
+ public static RuleChain ruleChain = RuleChain.outerRule(orchestrator).around(userRule);
static WsClient adminWsClient;
static WsClient userWsClient;
diff --git a/tests/src/test/java/org/sonarqube/tests/settings/SettingsTest.java b/tests/src/test/java/org/sonarqube/tests/settings/SettingsTest.java
index de7d213db2b..df5b3fe02d7 100644
--- a/tests/src/test/java/org/sonarqube/tests/settings/SettingsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/settings/SettingsTest.java
@@ -21,6 +21,7 @@ package org.sonarqube.tests.settings;
import com.google.common.collect.ImmutableMap;
import com.sonar.orchestrator.Orchestrator;
+import org.junit.rules.RuleChain;
import org.sonarqube.tests.Category1Suite;
import java.io.IOException;
import java.util.List;
@@ -62,8 +63,10 @@ public class SettingsTest {
@ClassRule
public static Orchestrator orchestrator = Category1Suite.ORCHESTRATOR;
+ private static UserRule userRule = UserRule.from(orchestrator);
+
@ClassRule
- public static UserRule userRule = UserRule.from(orchestrator);
+ public static RuleChain ruleChain = RuleChain.outerRule(orchestrator).around(userRule);
private static WsClient adminWsClient;
private static SettingsService anonymousSettingsService;
diff --git a/tests/src/test/java/org/sonarqube/tests/startup/StartupIndexationTest.java b/tests/src/test/java/org/sonarqube/tests/startup/StartupIndexationTest.java
index 1e95f664ec3..8032a439d3b 100644
--- a/tests/src/test/java/org/sonarqube/tests/startup/StartupIndexationTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/startup/StartupIndexationTest.java
@@ -35,7 +35,7 @@ import org.junit.rules.TestRule;
import org.junit.rules.Timeout;
import org.sonarqube.qa.util.LogsTailer;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Users;
import org.sonarqube.ws.client.user.SearchRequest;
import static org.assertj.core.api.Assertions.assertThat;
@@ -65,7 +65,7 @@ public class StartupIndexationTest {
sonarQube.resume();
sonarQubeIsUpWatcher.waitForLog(20, TimeUnit.SECONDS);
SearchRequest searchRequest = SearchRequest.builder().setQuery("admin").build();
- WsUsers.SearchWsResponse searchWsResponse = sonarQube.tester.wsClient().users().search(searchRequest);
+ Users.SearchWsResponse searchWsResponse = sonarQube.tester.wsClient().users().search(searchRequest);
assertThat(searchWsResponse.getUsersCount()).isEqualTo(1);
assertThat(searchWsResponse.getUsers(0).getName()).isEqualTo("Administrator");
}
diff --git a/tests/src/test/java/org/sonarqube/tests/test/NewCoverageTest.java b/tests/src/test/java/org/sonarqube/tests/test/NewCoverageTest.java
index 670d5440479..3c77acc0581 100644
--- a/tests/src/test/java/org/sonarqube/tests/test/NewCoverageTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/test/NewCoverageTest.java
@@ -27,7 +27,7 @@ import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsMeasures;
+import org.sonarqube.ws.Measures;
import static java.lang.Double.parseDouble;
import static org.assertj.core.api.Assertions.assertThat;
@@ -54,7 +54,7 @@ public class NewCoverageTest {
orchestrator.executeBuilds(SonarScanner.create(projectDir("testing/xoo-sample-new-coverage-v2"))
.setProperty("sonar.scm.disabled", "false"));
- Map<String, WsMeasures.Measure> measures = getMeasuresWithVariationsByMetricKey(orchestrator, PROJECT_KEY, ALL_NEW_COVERAGE_METRICS);
+ Map<String, Measures.Measure> measures = getMeasuresWithVariationsByMetricKey(orchestrator, PROJECT_KEY, ALL_NEW_COVERAGE_METRICS);
assertThat(parseDouble(measures.get("new_coverage").getPeriods().getPeriodsValue(0).getValue())).isEqualTo(66.6d, DEFAULT_OFFSET);
assertThat(parseDouble(measures.get("new_line_coverage").getPeriods().getPeriodsValue(0).getValue())).isEqualTo(100d, DEFAULT_OFFSET);
assertThat(parseDouble(measures.get("new_branch_coverage").getPeriods().getPeriodsValue(0).getValue())).isEqualTo(42.8, DEFAULT_OFFSET);
diff --git a/tests/src/test/java/org/sonarqube/tests/ui/UiExtensionsTest.java b/tests/src/test/java/org/sonarqube/tests/ui/UiExtensionsTest.java
index 4a8bbfe31da..8e6f6cba821 100644
--- a/tests/src/test/java/org/sonarqube/tests/ui/UiExtensionsTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/ui/UiExtensionsTest.java
@@ -26,8 +26,8 @@ import org.junit.Rule;
import org.junit.Test;
import org.openqa.selenium.By;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsProjects;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Projects;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.project.CreateRequest;
import util.ItUtils;
import util.selenium.Selenese;
@@ -78,7 +78,7 @@ public class UiExtensionsTest {
@Test
public void test_project_page() {
- WsProjects.CreateWsResponse.Project project = createSampleProject();
+ Projects.CreateWsResponse.Project project = createSampleProject();
tester.openBrowser().open("/dashboard?id=" + project.getKey());
@@ -91,7 +91,7 @@ public class UiExtensionsTest {
@Test
public void test_project_administration_page() {
- WsProjects.CreateWsResponse.Project project = createSampleProject();
+ Projects.CreateWsResponse.Project project = createSampleProject();
User administrator = tester.users().generateAdministrator();
tester.openBrowser()
@@ -105,7 +105,7 @@ public class UiExtensionsTest {
$("body").shouldHave(text("uiextensionsplugin/project_admin_page"));
}
- private WsProjects.CreateWsResponse.Project createSampleProject() {
+ private Projects.CreateWsResponse.Project createSampleProject() {
String projectKey = ItUtils.newProjectKey();
return tester.wsClient().projects().create(CreateRequest.builder()
.setKey(projectKey)
diff --git a/tests/src/test/java/org/sonarqube/tests/upgrade/UpgradeTest.java b/tests/src/test/java/org/sonarqube/tests/upgrade/UpgradeTest.java
index d7562caa960..76f2e28431c 100644
--- a/tests/src/test/java/org/sonarqube/tests/upgrade/UpgradeTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/upgrade/UpgradeTest.java
@@ -36,7 +36,7 @@ import org.apache.commons.io.IOUtils;
import org.junit.After;
import org.junit.Test;
import org.sonarqube.qa.util.SelenideConfig;
-import org.sonarqube.ws.WsMeasures.Measure;
+import org.sonarqube.ws.Measures.Measure;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.HttpConnector;
import org.sonarqube.ws.client.WsClient;
diff --git a/tests/src/test/java/org/sonarqube/tests/user/BaseIdentityProviderTest.java b/tests/src/test/java/org/sonarqube/tests/user/BaseIdentityProviderTest.java
index bcd7384dfae..db5b754b000 100644
--- a/tests/src/test/java/org/sonarqube/tests/user/BaseIdentityProviderTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/user/BaseIdentityProviderTest.java
@@ -20,15 +20,16 @@
package org.sonarqube.tests.user;
import com.google.common.base.Joiner;
-import com.google.common.base.Optional;
import com.sonar.orchestrator.Orchestrator;
import java.io.File;
+import java.util.Optional;
import org.apache.commons.io.FileUtils;
import org.junit.After;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.ClassRule;
import org.junit.Test;
+import org.junit.rules.RuleChain;
import org.sonarqube.qa.util.pageobjects.Navigation;
import org.sonarqube.tests.Category4Suite;
import org.sonarqube.ws.client.GetRequest;
@@ -38,7 +39,6 @@ import util.user.UserRule;
import util.user.Users;
import static org.assertj.core.api.Assertions.assertThat;
-import static org.assertj.guava.api.Assertions.assertThat;
import static util.ItUtils.newAdminWsClient;
import static util.ItUtils.resetSettings;
import static util.ItUtils.setServerProperty;
@@ -53,8 +53,10 @@ public class BaseIdentityProviderTest {
@ClassRule
public static Orchestrator ORCHESTRATOR = Category4Suite.ORCHESTRATOR;
+ private static UserRule userRule = UserRule.from(ORCHESTRATOR);
+
@ClassRule
- public static UserRule userRule = UserRule.from(ORCHESTRATOR);
+ public static RuleChain ruleChain = RuleChain.outerRule(ORCHESTRATOR).around(userRule);
static String FAKE_PROVIDER_KEY = "fake-base-id-provider";
diff --git a/tests/src/test/java/org/sonarqube/tests/user/ForceAuthenticationTest.java b/tests/src/test/java/org/sonarqube/tests/user/ForceAuthenticationTest.java
index d09aa110288..eb5fdfb4635 100644
--- a/tests/src/test/java/org/sonarqube/tests/user/ForceAuthenticationTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/user/ForceAuthenticationTest.java
@@ -27,7 +27,7 @@ import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.WsClient;
diff --git a/tests/src/test/java/org/sonarqube/tests/user/LocalAuthenticationTest.java b/tests/src/test/java/org/sonarqube/tests/user/LocalAuthenticationTest.java
index 30203f58e6a..14b8237feab 100644
--- a/tests/src/test/java/org/sonarqube/tests/user/LocalAuthenticationTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/user/LocalAuthenticationTest.java
@@ -30,9 +30,9 @@ import org.sonarqube.qa.util.Tester;
import org.sonarqube.qa.util.pageobjects.LoginPage;
import org.sonarqube.qa.util.pageobjects.Navigation;
import org.sonarqube.tests.Category4Suite;
-import org.sonarqube.ws.WsUserTokens;
-import org.sonarqube.ws.WsUsers;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.UserTokens;
+import org.sonarqube.ws.Users;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.HttpConnector;
import org.sonarqube.ws.client.PostRequest;
@@ -106,7 +106,7 @@ public class LocalAuthenticationTest {
User user = tester.users().generate();
String tokenName = "Validate token based authentication";
UserTokensService tokensService = tester.wsClient().userTokens();
- WsUserTokens.GenerateWsResponse generateWsResponse = tokensService.generate(new GenerateWsRequest()
+ UserTokens.GenerateWsResponse generateWsResponse = tokensService.generate(new GenerateWsRequest()
.setLogin(user.getLogin())
.setName(tokenName));
WsClient wsClient = WsClientFactories.getDefault().newClient(HttpConnector.newBuilder()
@@ -117,7 +117,7 @@ public class LocalAuthenticationTest {
assertThat(response.content()).isEqualTo("{\"valid\":true}");
- WsUserTokens.SearchWsResponse searchResponse = tokensService.search(new SearchWsRequest().setLogin(user.getLogin()));
+ UserTokens.SearchWsResponse searchResponse = tokensService.search(new SearchWsRequest().setLogin(user.getLogin()));
assertThat(searchResponse.getUserTokensCount()).isEqualTo(1);
tokensService.revoke(new RevokeWsRequest().setLogin(user.getLogin()).setName(tokenName));
searchResponse = tokensService.search(new SearchWsRequest().setLogin(user.getLogin()));
@@ -247,8 +247,8 @@ public class LocalAuthenticationTest {
assertThat(checkAuthenticationWithAuthenticateWebService("test", "password")).isTrue();
assertThat(tester.users().getByLogin("test").get())
- .extracting(WsUsers.SearchWsResponse.User::getLogin, WsUsers.SearchWsResponse.User::getName, WsUsers.SearchWsResponse.User::getEmail, u -> u.getScmAccounts().getScmAccountsList(),
- WsUsers.SearchWsResponse.User::getExternalIdentity, WsUsers.SearchWsResponse.User::getExternalProvider)
+ .extracting(Users.SearchWsResponse.User::getLogin, Users.SearchWsResponse.User::getName, Users.SearchWsResponse.User::getEmail, u -> u.getScmAccounts().getScmAccountsList(),
+ Users.SearchWsResponse.User::getExternalIdentity, Users.SearchWsResponse.User::getExternalProvider)
.containsOnly("test", "Test", "test@email.com", asList("test1", "test2"), "test", "sonarqube");
}
diff --git a/tests/src/test/java/org/sonarqube/tests/user/MyAccountPageTest.java b/tests/src/test/java/org/sonarqube/tests/user/MyAccountPageTest.java
index ec0961811d3..c4b2739585b 100644
--- a/tests/src/test/java/org/sonarqube/tests/user/MyAccountPageTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/user/MyAccountPageTest.java
@@ -28,7 +28,7 @@ import org.junit.Test;
import org.sonarqube.qa.util.pageobjects.Navigation;
import org.sonarqube.tests.Category4Suite;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.PostRequest;
import static com.codeborne.selenide.Condition.text;
diff --git a/tests/src/test/java/org/sonarqube/tests/user/OAuth2IdentityProviderTest.java b/tests/src/test/java/org/sonarqube/tests/user/OAuth2IdentityProviderTest.java
index 740fd28835c..2f6e7f36f1b 100644
--- a/tests/src/test/java/org/sonarqube/tests/user/OAuth2IdentityProviderTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/user/OAuth2IdentityProviderTest.java
@@ -35,7 +35,7 @@ import org.junit.Test;
import org.sonarqube.qa.util.Tester;
import org.sonarqube.qa.util.pageobjects.Navigation;
import org.sonarqube.tests.Category4Suite;
-import org.sonarqube.ws.WsUsers.SearchWsResponse.User;
+import org.sonarqube.ws.Users.SearchWsResponse.User;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.WsResponse;
import org.sonarqube.ws.client.permission.AddUserWsRequest;
diff --git a/tests/src/test/java/org/sonarqube/tests/user/OnboardingTest.java b/tests/src/test/java/org/sonarqube/tests/user/OnboardingTest.java
index f0f9c614629..b3638e6019b 100644
--- a/tests/src/test/java/org/sonarqube/tests/user/OnboardingTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/user/OnboardingTest.java
@@ -20,19 +20,15 @@
package org.sonarqube.tests.user;
import com.sonar.orchestrator.Orchestrator;
-import org.junit.After;
-import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.WsClient;
import util.ItUtils;
import static org.assertj.core.api.Assertions.assertThat;
-import static util.ItUtils.resetSettings;
-import static util.ItUtils.setServerProperty;
public class OnboardingTest {
@@ -44,16 +40,6 @@ public class OnboardingTest {
@Rule
public Tester tester = new Tester(orchestrator).disableOrganizations();
- @Before
- public void setUp() {
- resetSettings(orchestrator, null, ONBOARDING_TUTORIAL_SHOW_TO_NEW_USERS);
- }
-
- @After
- public void reset() {
- resetSettings(orchestrator, null, ONBOARDING_TUTORIAL_SHOW_TO_NEW_USERS);
- }
-
@Test
public void by_default_new_user_does_not_see_onboarding_tutorial() {
User user = tester.users().generate();
@@ -145,8 +131,8 @@ public class OnboardingTest {
verifyTutorial(reactivatedUser, true);
}
- private static void setShownOnboardingSetting(boolean showTutorial) {
- setServerProperty(orchestrator, ONBOARDING_TUTORIAL_SHOW_TO_NEW_USERS, String.valueOf(showTutorial));
+ private void setShownOnboardingSetting(boolean showTutorial) {
+ tester.settings().setGlobalSettings(ONBOARDING_TUTORIAL_SHOW_TO_NEW_USERS, String.valueOf(showTutorial));
}
private void verifyTutorial(User user, boolean expectedTutorial) {
diff --git a/tests/src/test/java/org/sonarqube/tests/user/OrganizationIdentityProviderTest.java b/tests/src/test/java/org/sonarqube/tests/user/OrganizationIdentityProviderTest.java
index 22e1dee4984..d3edfa5b92a 100644
--- a/tests/src/test/java/org/sonarqube/tests/user/OrganizationIdentityProviderTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/user/OrganizationIdentityProviderTest.java
@@ -21,20 +21,17 @@ package org.sonarqube.tests.user;
import com.google.common.base.Joiner;
import com.sonar.orchestrator.Orchestrator;
-import org.sonarqube.tests.Category6Suite;
import org.junit.After;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsUserGroups.Group;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.tests.Category6Suite;
+import org.sonarqube.ws.UserGroups.Group;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.GetRequest;
-import static util.ItUtils.resetSettings;
-import static util.ItUtils.setServerProperty;
-
public class OrganizationIdentityProviderTest {
@ClassRule
@@ -43,22 +40,21 @@ public class OrganizationIdentityProviderTest {
@Rule
public Tester tester = new Tester(orchestrator);
-
@Before
public void setUp() {
// enable the fake authentication plugin
- setServerProperty(orchestrator, "sonar.auth.fake-base-id-provider.enabled", "true");
+ tester.settings().setGlobalSettings("sonar.auth.fake-base-id-provider.enabled", "true");
}
@After
public void tearDown() {
- resetSettings(orchestrator, null, "sonar.auth.fake-base-id-provider.enabled", "sonar.auth.fake-base-id-provider.user",
+ tester.settings().resetSettings("sonar.auth.fake-base-id-provider.enabled", "sonar.auth.fake-base-id-provider.user",
"sonar.auth.fake-base-id-provider.throwUnauthorizedMessage", "sonar.auth.fake-base-id-provider.enabledGroupsSync", "sonar.auth.fake-base-id-provider.groups",
"sonar.auth.fake-base-id-provider.allowsUsersToSignUp");
}
@Test
- public void default_group_is_not_added_for_new_user_when_organizations_are_enabled() {
+ public void default_group_is_not_added_for_new_user_when_organizations_are_enabled() {
Group group = tester.groups().generate(null);
enableUserCreationByAuthPlugin("aLogin");
setGroupsReturnedByAuthPlugin(group.getName());
@@ -99,14 +95,14 @@ public class OrganizationIdentityProviderTest {
tester.groups().assertThatUserIsOnlyMemberOf(null, user.getLogin());
}
- private static void enableUserCreationByAuthPlugin(String login) {
- setServerProperty(orchestrator, "sonar.auth.fake-base-id-provider.user", login + ",fake-john,John,john@email.com");
+ private void enableUserCreationByAuthPlugin(String login) {
+ tester.settings().setGlobalSettings("sonar.auth.fake-base-id-provider.user", login + ",fake-john,John,john@email.com");
}
- private static void setGroupsReturnedByAuthPlugin(String... groups) {
- setServerProperty(orchestrator, "sonar.auth.fake-base-id-provider.enabledGroupsSync", "true");
+ private void setGroupsReturnedByAuthPlugin(String... groups) {
+ tester.settings().setGlobalSettings("sonar.auth.fake-base-id-provider.enabledGroupsSync", "true");
if (groups.length > 0) {
- setServerProperty(orchestrator, "sonar.auth.fake-base-id-provider.groups", Joiner.on(",").join(groups));
+ tester.settings().setGlobalSettings("sonar.auth.fake-base-id-provider.groups", Joiner.on(",").join(groups));
}
}
diff --git a/tests/src/test/java/org/sonarqube/tests/user/RealmAuthenticationTest.java b/tests/src/test/java/org/sonarqube/tests/user/RealmAuthenticationTest.java
index aee0917c8f8..686732cb340 100644
--- a/tests/src/test/java/org/sonarqube/tests/user/RealmAuthenticationTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/user/RealmAuthenticationTest.java
@@ -36,8 +36,8 @@ import org.sonar.wsclient.base.HttpException;
import org.sonar.wsclient.connectors.HttpClient4Connector;
import org.sonar.wsclient.services.AuthenticationQuery;
import org.sonar.wsclient.user.UserParameters;
-import org.sonarqube.qa.util.pageobjects.SystemInfoPage;
import org.sonarqube.qa.util.Tester;
+import org.sonarqube.qa.util.pageobjects.SystemInfoPage;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.WsResponse;
import org.sonarqube.ws.client.user.CreateRequest;
@@ -48,11 +48,9 @@ import static java.net.HttpURLConnection.HTTP_OK;
import static java.net.HttpURLConnection.HTTP_UNAUTHORIZED;
import static org.assertj.core.api.Assertions.assertThat;
import static org.junit.Assert.fail;
-import static util.ItUtils.newAdminWsClient;
import static util.ItUtils.newUserWsClient;
import static util.ItUtils.pluginArtifact;
import static util.ItUtils.resetSettings;
-import static util.ItUtils.setServerProperty;
import static util.selenium.Selenese.runSelenese;
/**
@@ -293,7 +291,7 @@ public class RealmAuthenticationTest {
verifyAuthenticationIsNotOk(login, null);
verifyAuthenticationIsOk(null, null);
- setServerProperty(orchestrator, "sonar.forceAuthentication", "true");
+ tester.settings().setGlobalSettings("sonar.forceAuthentication", "true");
verifyAuthenticationIsOk(login, password);
verifyAuthenticationIsNotOk("wrong", password);
@@ -313,7 +311,7 @@ public class RealmAuthenticationTest {
@Test
public void provision_user_before_authentication() {
- newAdminWsClient(orchestrator).users().create(CreateRequest.builder()
+ tester.wsClient().users().create(CreateRequest.builder()
.setLogin(USER_LOGIN)
.setName("Tester Testerovich")
.setEmail("tester@example.org")
@@ -346,8 +344,8 @@ public class RealmAuthenticationTest {
/**
* Updates information about users in security-plugin.
*/
- private static void updateUsersInExtAuth(Map<String, String> users) {
- setServerProperty(orchestrator, USERS_PROPERTY, format(users));
+ private void updateUsersInExtAuth(Map<String, String> users) {
+ tester.settings().setGlobalSettings(USERS_PROPERTY, format(users));
}
private void createUserInDb(String login, String password) {
diff --git a/tests/src/test/java/org/sonarqube/tests/user/SsoAuthenticationTest.java b/tests/src/test/java/org/sonarqube/tests/user/SsoAuthenticationTest.java
index 2860b09dfb7..07214b2a5bc 100644
--- a/tests/src/test/java/org/sonarqube/tests/user/SsoAuthenticationTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/user/SsoAuthenticationTest.java
@@ -28,6 +28,7 @@ import org.apache.commons.io.FileUtils;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Test;
+import org.junit.rules.RuleChain;
import util.user.UserRule;
import static java.nio.charset.StandardCharsets.UTF_8;
@@ -63,61 +64,63 @@ public class SsoAuthenticationTest {
.setServerProperty("sonar.web.sso.groupsHeader", GROUPS_HEADER)
.build();
+ private static UserRule userRule = UserRule.from(orchestrator);
+
@ClassRule
- public static UserRule USER_RULE = UserRule.from(orchestrator);
+ public static RuleChain ruleChain = RuleChain.outerRule(orchestrator).around(userRule);
@Before
public void resetData() throws Exception {
- USER_RULE.resetUsers();
+ userRule.resetUsers();
}
@Test
public void authenticate() {
doCall(USER_LOGIN, USER_NAME, USER_EMAIL, null);
- USER_RULE.verifyUserExists(USER_LOGIN, USER_NAME, USER_EMAIL);
+ userRule.verifyUserExists(USER_LOGIN, USER_NAME, USER_EMAIL);
}
@Test
public void authenticate_with_only_login() throws Exception {
doCall(USER_LOGIN, null, null, null);
- USER_RULE.verifyUserExists(USER_LOGIN, USER_LOGIN, null);
+ userRule.verifyUserExists(USER_LOGIN, USER_LOGIN, null);
}
@Test
public void update_user_when_headers_are_updated() {
doCall(USER_LOGIN, USER_NAME, USER_EMAIL, null);
- USER_RULE.verifyUserExists(USER_LOGIN, USER_NAME, USER_EMAIL);
+ userRule.verifyUserExists(USER_LOGIN, USER_NAME, USER_EMAIL);
// As we don't keep the JWT token is the test, the user is updated
doCall(USER_LOGIN, "new name", "new email", null);
- USER_RULE.verifyUserExists(USER_LOGIN, "new name", "new email");
+ userRule.verifyUserExists(USER_LOGIN, "new name", "new email");
}
@Test
public void authenticate_with_groups() {
doCall(USER_LOGIN, null, null, GROUP_1);
- USER_RULE.verifyUserGroupMembership(USER_LOGIN, GROUP_1, "sonar-users");
+ userRule.verifyUserGroupMembership(USER_LOGIN, GROUP_1, "sonar-users");
}
@Test
public void synchronize_groups_when_authenticating_existing_user() throws Exception {
- USER_RULE.createGroup(GROUP_1);
- USER_RULE.createGroup(GROUP_2);
- USER_RULE.createGroup(GROUP_3);
- USER_RULE.createUser(USER_LOGIN, "password");
- USER_RULE.associateGroupsToUser(USER_LOGIN, GROUP_1, GROUP_2);
+ userRule.createGroup(GROUP_1);
+ userRule.createGroup(GROUP_2);
+ userRule.createGroup(GROUP_3);
+ userRule.createUser(USER_LOGIN, "password");
+ userRule.associateGroupsToUser(USER_LOGIN, GROUP_1, GROUP_2);
doCall(USER_LOGIN, null, null, GROUP_2 + "," + GROUP_3);
- USER_RULE.verifyUserGroupMembership(USER_LOGIN, GROUP_2, GROUP_3, "sonar-users");
+ userRule.verifyUserGroupMembership(USER_LOGIN, GROUP_2, GROUP_3, "sonar-users");
}
@Test
public void authentication_with_local_user_is_possible_when_no_header() throws Exception {
- USER_RULE.createUser(USER_LOGIN, "password");
+ userRule.createUser(USER_LOGIN, "password");
checkLocalAuthentication(USER_LOGIN, "password");
}
@@ -131,12 +134,12 @@ public class SsoAuthenticationTest {
List<String> logsLines = FileUtils.readLines(orchestrator.getServer().getWebLogs(), UTF_8);
assertThat(logsLines).doesNotContain("org.sonar.server.exceptions.BadRequestException: Use only letters, numbers, and .-_@ please.");
- USER_RULE.verifyUserDoesNotExist(USER_LOGIN);
+ userRule.verifyUserDoesNotExist(USER_LOGIN);
}
@Test
public void fail_when_email_already_exists() throws Exception {
- USER_RULE.createUser("another", "Another", USER_EMAIL, "another");
+ userRule.createUser("another", "Another", USER_EMAIL, "another");
Response response = doCall(USER_LOGIN, USER_NAME, USER_EMAIL, null);
diff --git a/tests/src/test/java/org/sonarqube/tests/user/UserEsResilienceTest.java b/tests/src/test/java/org/sonarqube/tests/user/UserEsResilienceTest.java
index 7aa50328352..f73b1fab03d 100644
--- a/tests/src/test/java/org/sonarqube/tests/user/UserEsResilienceTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/user/UserEsResilienceTest.java
@@ -31,7 +31,7 @@ import org.junit.rules.TestRule;
import org.junit.rules.Timeout;
import org.sonarqube.tests.Byteman;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsUsers.CreateWsResponse.User;
+import org.sonarqube.ws.Users.CreateWsResponse.User;
import org.sonarqube.ws.client.user.SearchRequest;
import org.sonarqube.ws.client.user.UpdateRequest;
import util.ItUtils;
diff --git a/tests/src/test/java/org/sonarqube/tests/user/UsersPageTest.java b/tests/src/test/java/org/sonarqube/tests/user/UsersPageTest.java
index b983b0e69e0..38b62681a9c 100644
--- a/tests/src/test/java/org/sonarqube/tests/user/UsersPageTest.java
+++ b/tests/src/test/java/org/sonarqube/tests/user/UsersPageTest.java
@@ -27,7 +27,7 @@ import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Users;
import org.sonarqube.ws.client.WsClient;
import org.sonarqube.ws.client.user.GroupsRequest;
import util.selenium.Selenese;
@@ -77,8 +77,8 @@ public class UsersPageTest {
userRule.createGroup(group);
userRule.associateGroupsToUser(login, group);
- List<WsUsers.GroupsWsResponse.Group> result = adminClient.users().groups(GroupsRequest.builder().setLogin(login).build()).getGroupsList();
+ List<Users.GroupsWsResponse.Group> result = adminClient.users().groups(GroupsRequest.builder().setLogin(login).build()).getGroupsList();
- assertThat(result).extracting(WsUsers.GroupsWsResponse.Group::getName).contains(group);
+ assertThat(result).extracting(Users.GroupsWsResponse.Group::getName).contains(group);
}
}
diff --git a/tests/src/test/java/util/ItUtils.java b/tests/src/test/java/util/ItUtils.java
index b10257c2c53..f663c7d6b94 100644
--- a/tests/src/test/java/util/ItUtils.java
+++ b/tests/src/test/java/util/ItUtils.java
@@ -63,9 +63,9 @@ import org.sonar.wsclient.issue.IssueClient;
import org.sonar.wsclient.issue.IssueQuery;
import org.sonarqube.qa.util.SettingTester;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsComponents.Component;
-import org.sonarqube.ws.WsMeasures;
-import org.sonarqube.ws.WsMeasures.Measure;
+import org.sonarqube.ws.Components.Component;
+import org.sonarqube.ws.Measures;
+import org.sonarqube.ws.Measures.Measure;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.HttpConnector;
import org.sonarqube.ws.client.WsClient;
@@ -343,7 +343,7 @@ public class ItUtils {
@CheckForNull
public static Measure getMeasureWithVariation(Orchestrator orchestrator, String componentKey, String metricKey) {
- WsMeasures.ComponentWsResponse response = newWsClient(orchestrator).measures().component(new ComponentWsRequest()
+ Measures.ComponentWsResponse response = newWsClient(orchestrator).measures().component(new ComponentWsRequest()
.setComponentKey(componentKey)
.setMetricKeys(singletonList(metricKey))
.setAdditionalFields(singletonList("periods")));
@@ -366,7 +366,7 @@ public class ItUtils {
*/
@CheckForNull
public static Double getLeakPeriodValue(Orchestrator orchestrator, String componentKey, String metricKey) {
- List<WsMeasures.PeriodValue> periodsValueList = getMeasureWithVariation(orchestrator, componentKey, metricKey).getPeriods().getPeriodsValueList();
+ List<Measures.PeriodValue> periodsValueList = getMeasureWithVariation(orchestrator, componentKey, metricKey).getPeriods().getPeriodsValueList();
return periodsValueList.size() > 0 ? Double.parseDouble(periodsValueList.get(0).getValue()) : null;
}
diff --git a/tests/src/test/java/util/user/UserRule.java b/tests/src/test/java/util/user/UserRule.java
index beb07e114d2..80df9438ab6 100644
--- a/tests/src/test/java/util/user/UserRule.java
+++ b/tests/src/test/java/util/user/UserRule.java
@@ -19,19 +19,18 @@
*/
package util.user;
-import com.google.common.base.Optional;
-import com.google.common.base.Predicate;
-import com.google.common.collect.FluentIterable;
import com.sonar.orchestrator.Orchestrator;
import java.util.List;
+import java.util.Optional;
import java.util.concurrent.atomic.AtomicInteger;
+import java.util.function.Predicate;
import java.util.stream.Collectors;
import javax.annotation.CheckForNull;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import org.junit.rules.ExternalResource;
import org.sonarqube.qa.util.Tester;
-import org.sonarqube.ws.WsUsers;
+import org.sonarqube.ws.Users;
import org.sonarqube.ws.client.GetRequest;
import org.sonarqube.ws.client.PostRequest;
import org.sonarqube.ws.client.WsClient;
@@ -47,7 +46,6 @@ import static java.util.Arrays.stream;
import static java.util.Objects.requireNonNull;
import static org.apache.commons.lang.RandomStringUtils.randomAlphabetic;
import static org.assertj.core.api.Assertions.assertThat;
-import static org.assertj.guava.api.Assertions.assertThat;
import static util.ItUtils.newAdminWsClient;
/**
@@ -83,7 +81,7 @@ public class UserRule extends ExternalResource implements GroupManagement {
// *****************
public void resetUsers() {
- for (Users.User user : getUsers().getUsers()) {
+ for (util.user.Users.User user : getUsers().getUsers()) {
String userLogin = user.getLogin();
if (!userLogin.equals(ADMIN_LOGIN)) {
deactivateUsers(userLogin);
@@ -91,8 +89,8 @@ public class UserRule extends ExternalResource implements GroupManagement {
}
}
- public Users.User verifyUserExists(String login, String name, @Nullable String email) {
- Optional<Users.User> user = getUserByLogin(login);
+ public util.user.Users.User verifyUserExists(String login, String name, @Nullable String email) {
+ Optional<util.user.Users.User> user = getUserByLogin(login);
assertThat(user).as("User with login '%s' hasn't been found", login).isPresent();
assertThat(user.get().getLogin()).isEqualTo(login);
assertThat(user.get().getName()).isEqualTo(name);
@@ -101,15 +99,15 @@ public class UserRule extends ExternalResource implements GroupManagement {
}
public void verifyUserExists(String login, String name, @Nullable String email, boolean local) {
- Users.User user = verifyUserExists(login, name, email);
+ util.user.Users.User user = verifyUserExists(login, name, email);
assertThat(user.isLocal()).isEqualTo(local);
}
public void verifyUserDoesNotExist(String login) {
- assertThat(getUserByLogin(login)).as("Unexpected user with login '%s' has been found", login).isAbsent();
+ assertThat(getUserByLogin(login)).as("Unexpected user with login '%s' has been found", login).isEmpty();
}
- public WsUsers.CreateWsResponse.User createUser(String login, String name, @Nullable String email, String password) {
+ public Users.CreateWsResponse.User createUser(String login, String name, @Nullable String email, String password) {
CreateRequest.Builder request = CreateRequest.builder()
.setLogin(login)
.setName(name)
@@ -122,7 +120,7 @@ public class UserRule extends ExternalResource implements GroupManagement {
* Create user with randomly generated values. By default password is the login.
*/
@SafeVarargs
- public final WsUsers.CreateWsResponse.User generate(Consumer<CreateRequest.Builder>... populators) {
+ public final org.sonarqube.ws.Users.CreateWsResponse.User generate(Consumer<CreateRequest.Builder>... populators) {
int id = ID_GENERATOR.getAndIncrement();
String login = "login" + id;
CreateRequest.Builder request = CreateRequest.builder()
@@ -157,15 +155,15 @@ public class UserRule extends ExternalResource implements GroupManagement {
adminWsClient().roots().setRoot(login);
}
- public Optional<Users.User> getUserByLogin(String login) {
- return FluentIterable.from(getUsers().getUsers()).firstMatch(new MatchUserLogin(login));
+ public Optional<util.user.Users.User> getUserByLogin(String login) {
+ return getUsers().getUsers().stream().filter(new MatchUserLogin(login)).findFirst();
}
- public Users getUsers() {
+ public util.user.Users getUsers() {
WsResponse response = adminWsClient().wsConnector().call(
new GetRequest("api/users/search"))
.failIfNotSuccessful();
- return Users.parse(response.content());
+ return util.user.Users.parse(response.content());
}
public void deactivateUsers(List<String> userLogins) {
@@ -194,10 +192,6 @@ public class UserRule extends ExternalResource implements GroupManagement {
// User groups
// *****************
- public GroupManagement forOrganization(String organizationKey) {
- return new GroupManagementImpl(organizationKey);
- }
-
private final class GroupManagementImpl implements GroupManagement {
@CheckForNull
private final String organizationKey;
@@ -247,7 +241,7 @@ public class UserRule extends ExternalResource implements GroupManagement {
@Override
public java.util.Optional<Groups.Group> getGroupByName(String name) {
- return getGroups().getGroups().stream().filter(new MatchGroupName(name)::apply).findFirst();
+ return getGroups().getGroups().stream().filter(new MatchGroupName(name)).findFirst();
}
@Override
@@ -339,7 +333,7 @@ public class UserRule extends ExternalResource implements GroupManagement {
return adminWsClient;
}
- private class MatchUserLogin implements Predicate<Users.User> {
+ private class MatchUserLogin implements Predicate<util.user.Users.User> {
private final String login;
private MatchUserLogin(String login) {
@@ -347,7 +341,7 @@ public class UserRule extends ExternalResource implements GroupManagement {
}
@Override
- public boolean apply(@Nonnull Users.User user) {
+ public boolean test(@Nonnull util.user.Users.User user) {
String login = user.getLogin();
return login != null && login.equals(this.login) && user.isActive();
}
@@ -361,7 +355,7 @@ public class UserRule extends ExternalResource implements GroupManagement {
}
@Override
- public boolean apply(@Nonnull Groups.Group group) {
+ public boolean test(@Nonnull Groups.Group group) {
String groupName = group.getName();
return groupName != null && groupName.equals(this.groupName);
}
diff --git a/tests/src/test/java/util/user/Users.java b/tests/src/test/java/util/user/Users.java
index 2f0a252e6c7..01e3c70238d 100644
--- a/tests/src/test/java/util/user/Users.java
+++ b/tests/src/test/java/util/user/Users.java
@@ -22,6 +22,7 @@ package util.user;
import com.google.gson.Gson;
import java.util.List;
+@Deprecated
public class Users {
private List<User> users;