From: Simon Brandhof Date: Tue, 14 Nov 2017 09:49:23 +0000 (+0100) Subject: Add category "issue" in integration tests X-Git-Tag: 7.0-RC1~313^2~3 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=7d1722a29b806cfb54eb5ff754ea33f840447afd;p=sonarqube.git Add category "issue" in integration tests --- diff --git a/cix.sh b/cix.sh index 6acdae1ff4e..74159ae5ae4 100755 --- a/cix.sh +++ b/cix.sh @@ -26,7 +26,7 @@ case "$RUN_ACTIVITY" in ;; Category2) - CATEGORY="Category2|test|qualityModel" + CATEGORY="issue|test|qualityModel" ;; Category3) diff --git a/tests/src/test/java/org/sonarqube/tests/Category2Suite.java b/tests/src/test/java/org/sonarqube/tests/Category2Suite.java deleted file mode 100644 index 619aa95106b..00000000000 --- a/tests/src/test/java/org/sonarqube/tests/Category2Suite.java +++ /dev/null @@ -1,101 +0,0 @@ -/* - * 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; - -import com.sonar.orchestrator.Orchestrator; -import org.junit.ClassRule; -import org.junit.runner.RunWith; -import org.junit.runners.Suite; -import org.sonarqube.tests.component.BranchTest; -import org.sonarqube.tests.issue.AutoAssignTest; -import org.sonarqube.tests.issue.CommonRulesTest; -import org.sonarqube.tests.issue.CustomRulesTest; -import org.sonarqube.tests.issue.IssueActionTest; -import org.sonarqube.tests.issue.IssueBulkChangeTest; -import org.sonarqube.tests.issue.IssueChangelogTest; -import org.sonarqube.tests.issue.IssueCreationDateQPChangedTest; -import org.sonarqube.tests.issue.IssueCreationTest; -import org.sonarqube.tests.issue.IssueFilterExtensionTest; -import org.sonarqube.tests.issue.IssueFilterOnCommonRulesTest; -import org.sonarqube.tests.issue.IssueFilterTest; -import org.sonarqube.tests.issue.IssueMeasureTest; -import org.sonarqube.tests.issue.IssuePurgeTest; -import org.sonarqube.tests.issue.IssueSearchTest; -import org.sonarqube.tests.issue.IssueTrackingTest; -import org.sonarqube.tests.issue.IssueWorkflowTest; -import org.sonarqube.tests.issue.IssuesPageTest; -import org.sonarqube.tests.issue.NewIssuesMeasureTest; -import org.sonarqube.tests.rule.RulesPageTest; - -import static util.ItUtils.pluginArtifact; -import static util.ItUtils.xooPlugin; - -/** - * @deprecated use dedicated suites in each package (see {@link org.sonarqube.tests.measure.MeasureSuite} - * for instance) - */ -@Deprecated -@RunWith(Suite.class) -@Suite.SuiteClasses({ - // issue - AutoAssignTest.class, - CommonRulesTest.class, - CustomRulesTest.class, - IssueActionTest.class, - IssueBulkChangeTest.class, - IssueChangelogTest.class, - IssueCreationTest.class, - IssueFilterOnCommonRulesTest.class, - IssueFilterTest.class, - IssueFilterExtensionTest.class, - IssueMeasureTest.class, - IssuePurgeTest.class, - IssueSearchTest.class, - IssueTrackingTest.class, - IssueWorkflowTest.class, - NewIssuesMeasureTest.class, - IssueCreationDateQPChangedTest.class, - IssuesPageTest.class, - // rule - RulesPageTest.class, - // branch - BranchTest.class -}) -public class Category2Suite { - - @ClassRule - public static final Orchestrator ORCHESTRATOR = Orchestrator.builderEnv() - .setServerProperty("sonar.search.httpPort", "9025") - .addPlugin(xooPlugin()) - - // issue - .addPlugin(pluginArtifact("issue-filter-plugin")) - - // 1 second. Required for notification test. - .setServerProperty("sonar.notifications.delay", "1") - - .setServerProperty("organization.enabled", "true") - - // reduce memory for Elasticsearch to 128M - .setServerProperty("sonar.search.javaOpts", "-Xms128m -Xmx128m") - - .build(); - -} diff --git a/tests/src/test/java/org/sonarqube/tests/Category4Suite.java b/tests/src/test/java/org/sonarqube/tests/Category4Suite.java index 94d9a43693a..bf333205632 100644 --- a/tests/src/test/java/org/sonarqube/tests/Category4Suite.java +++ b/tests/src/test/java/org/sonarqube/tests/Category4Suite.java @@ -28,6 +28,7 @@ import org.sonarqube.tests.analysis.IssueExclusionsTest; import org.sonarqube.tests.ce.CeTempDirTest; import org.sonarqube.tests.ce.CeWsTest; import org.sonarqube.tests.qualityProfile.QualityProfilesUiTest; +import org.sonarqube.tests.rule.RulesPageTest; import org.sonarqube.tests.serverSystem.HttpHeadersTest; import org.sonarqube.tests.serverSystem.LogsTest; import org.sonarqube.tests.serverSystem.PingTest; @@ -82,6 +83,7 @@ import static util.ItUtils.xooPlugin; WsTest.class, // quality profiles QualityProfilesUiTest.class, + RulesPageTest.class, LogsTest.class, // ce CeWsTest.class, diff --git a/tests/src/test/java/org/sonarqube/tests/issue/AbstractIssueTest.java b/tests/src/test/java/org/sonarqube/tests/issue/AbstractIssueTest.java index fe452745f1a..6a50a05d4a7 100644 --- a/tests/src/test/java/org/sonarqube/tests/issue/AbstractIssueTest.java +++ b/tests/src/test/java/org/sonarqube/tests/issue/AbstractIssueTest.java @@ -26,14 +26,13 @@ import org.sonar.wsclient.issue.Issue; import org.sonar.wsclient.issue.IssueClient; import org.sonar.wsclient.issue.IssueQuery; import org.sonar.wsclient.issue.Issues; -import org.sonarqube.tests.Category2Suite; import static org.assertj.core.api.Assertions.assertThat; public abstract class AbstractIssueTest { @ClassRule - public static final Orchestrator ORCHESTRATOR = Category2Suite.ORCHESTRATOR; + public static final Orchestrator ORCHESTRATOR = IssueSuite.ORCHESTRATOR; static IssueClient adminIssueClient() { return ORCHESTRATOR.getServer().adminWsClient().issueClient(); diff --git a/tests/src/test/java/org/sonarqube/tests/issue/IssueSuite.java b/tests/src/test/java/org/sonarqube/tests/issue/IssueSuite.java new file mode 100644 index 00000000000..e86b2f6635f --- /dev/null +++ b/tests/src/test/java/org/sonarqube/tests/issue/IssueSuite.java @@ -0,0 +1,71 @@ +/* + * 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.issue; + +import com.sonar.orchestrator.Orchestrator; +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) +@Suite.SuiteClasses({ + AutoAssignTest.class, + CommonRulesTest.class, + CustomRulesTest.class, + IssueActionTest.class, + IssueBulkChangeTest.class, + IssueChangelogTest.class, + IssueCreationTest.class, + IssueFilterOnCommonRulesTest.class, + IssueFilterTest.class, + IssueFilterExtensionTest.class, + IssueMeasureTest.class, + IssuePurgeTest.class, + IssueSearchTest.class, + IssueTrackingTest.class, + IssueWorkflowTest.class, + NewIssuesMeasureTest.class, + IssueCreationDateQPChangedTest.class, + IssuesPageTest.class +}) +public class IssueSuite { + + @ClassRule + public static final Orchestrator ORCHESTRATOR = Orchestrator.builderEnv() + .setServerProperty("sonar.search.httpPort", "9025") + .addPlugin(xooPlugin()) + + // issue + .addPlugin(pluginArtifact("issue-filter-plugin")) + + // 1 second. Required for notification test. + .setServerProperty("sonar.notifications.delay", "1") + + .setServerProperty("organization.enabled", "true") + + // reduce memory for Elasticsearch to 128M + .setServerProperty("sonar.search.javaOpts", "-Xms128m -Xmx128m") + + .build(); + +} diff --git a/tests/src/test/java/org/sonarqube/tests/issue/IssuesPageTest.java b/tests/src/test/java/org/sonarqube/tests/issue/IssuesPageTest.java index e3065647298..699ca87b024 100644 --- a/tests/src/test/java/org/sonarqube/tests/issue/IssuesPageTest.java +++ b/tests/src/test/java/org/sonarqube/tests/issue/IssuesPageTest.java @@ -20,7 +20,6 @@ package org.sonarqube.tests.issue; import com.sonar.orchestrator.Orchestrator; -import org.sonarqube.tests.Category2Suite; import org.junit.Before; import org.junit.BeforeClass; import org.junit.ClassRule; @@ -38,7 +37,7 @@ public class IssuesPageTest { private static final String PROJECT_KEY = "sample"; @ClassRule - public static Orchestrator ORCHESTRATOR = Category2Suite.ORCHESTRATOR; + public static Orchestrator ORCHESTRATOR = IssueSuite.ORCHESTRATOR; @Rule public UserRule userRule = UserRule.from(ORCHESTRATOR); diff --git a/tests/src/test/java/org/sonarqube/tests/rule/RulesPageTest.java b/tests/src/test/java/org/sonarqube/tests/rule/RulesPageTest.java index 97b2d2b205a..312304ebca8 100644 --- a/tests/src/test/java/org/sonarqube/tests/rule/RulesPageTest.java +++ b/tests/src/test/java/org/sonarqube/tests/rule/RulesPageTest.java @@ -23,13 +23,13 @@ import com.sonar.orchestrator.Orchestrator; import org.junit.ClassRule; import org.junit.Rule; import org.junit.Test; -import org.sonarqube.qa.util.pageobjects.RulesPage; -import org.sonarqube.tests.Category2Suite; import org.sonarqube.qa.util.Tester; +import org.sonarqube.qa.util.pageobjects.RulesPage; +import org.sonarqube.tests.Category4Suite; public class RulesPageTest { @ClassRule - public static Orchestrator ORCHESTRATOR = Category2Suite.ORCHESTRATOR; + public static Orchestrator ORCHESTRATOR = Category4Suite.ORCHESTRATOR; @Rule public Tester tester = new Tester(ORCHESTRATOR).disableOrganizations();