From 640ae85cdd30643c8c58ab092b998274422758d0 Mon Sep 17 00:00:00 2001 From: Julien Lancelot Date: Fri, 12 Feb 2016 11:43:14 +0100 Subject: [PATCH] Move SystemAdminPermissionTest to authorisation --- .../src/test/java/it/Category1Suite.java | 4 +- .../SystemAdminPermissionTest.java | 68 +++++++------------ .../change-other-measure-filter-owner.html | 0 .../change-own-measure-filter-owner.html | 0 ...shared-global-dashboard-owner-failure.html | 0 .../change-shared-global-dashboard-owner.html | 0 ...hared-project-dashboard-owner-failure.html | 0 ...change-shared-project-dashboard-owner.html | 0 .../change-system-measure-filter-owner.html | 0 9 files changed, 28 insertions(+), 44 deletions(-) rename it/it-tests/src/test/java/it/{permissions => authorisation}/SystemAdminPermissionTest.java (52%) rename it/it-tests/src/test/resources/{permissions => authorisation}/SystemAdminPermissionTest/change-other-measure-filter-owner.html (100%) rename it/it-tests/src/test/resources/{permissions => authorisation}/SystemAdminPermissionTest/change-own-measure-filter-owner.html (100%) rename it/it-tests/src/test/resources/{permissions => authorisation}/SystemAdminPermissionTest/change-shared-global-dashboard-owner-failure.html (100%) rename it/it-tests/src/test/resources/{permissions => authorisation}/SystemAdminPermissionTest/change-shared-global-dashboard-owner.html (100%) rename it/it-tests/src/test/resources/{permissions => authorisation}/SystemAdminPermissionTest/change-shared-project-dashboard-owner-failure.html (100%) rename it/it-tests/src/test/resources/{permissions => authorisation}/SystemAdminPermissionTest/change-shared-project-dashboard-owner.html (100%) rename it/it-tests/src/test/resources/{permissions => authorisation}/SystemAdminPermissionTest/change-system-measure-filter-owner.html (100%) diff --git a/it/it-tests/src/test/java/it/Category1Suite.java b/it/it-tests/src/test/java/it/Category1Suite.java index 8e5b1bdeac5c..a81080064be7 100644 --- a/it/it-tests/src/test/java/it/Category1Suite.java +++ b/it/it-tests/src/test/java/it/Category1Suite.java @@ -47,6 +47,7 @@ import it.authorisation.PermissionSearchTest; import it.authorisation.ProvisioningPermissionTest; import it.authorisation.QualityProfileAdminPermissionTest; +import it.authorisation.SystemAdminPermissionTest; import it.i18n.I18nTest; import it.measureHistory.DifferentialPeriodsTest; import it.measureHistory.HistoryUiTest; @@ -100,13 +101,14 @@ QualityGateTest.class, QualityGateUiTest.class, QualityGateNotificationTest.class, - // permission + // authorisation DashboardSharingPermissionTest.class, ExecuteAnalysisPermissionTest.class, IssuePermissionTest.class, PermissionSearchTest.class, ProvisioningPermissionTest.class, QualityProfileAdminPermissionTest.class, + SystemAdminPermissionTest.class, // measure history DifferentialPeriodsTest.class, HistoryUiTest.class, diff --git a/it/it-tests/src/test/java/it/permissions/SystemAdminPermissionTest.java b/it/it-tests/src/test/java/it/authorisation/SystemAdminPermissionTest.java similarity index 52% rename from it/it-tests/src/test/java/it/permissions/SystemAdminPermissionTest.java rename to it/it-tests/src/test/java/it/authorisation/SystemAdminPermissionTest.java index 5f04b26d796b..cb893b6a49bc 100644 --- a/it/it-tests/src/test/java/it/permissions/SystemAdminPermissionTest.java +++ b/it/it-tests/src/test/java/it/authorisation/SystemAdminPermissionTest.java @@ -17,42 +17,45 @@ * along with this program; if not, write to the Free Software Foundation, * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ -package it.permissions; +package it.authorisation; import com.sonar.orchestrator.Orchestrator; -import com.sonar.orchestrator.build.SonarScanner; import com.sonar.orchestrator.selenium.Selenese; -import it.Category4Suite; +import it.Category1Suite; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.ClassRule; import org.junit.Test; -import org.sonarqube.ws.client.PostRequest; -import org.sonarqube.ws.client.WsClient; -import util.ItUtils; +import org.sonarqube.ws.client.permission.AddUserWsRequest; +import org.sonarqube.ws.client.permission.PermissionsService; +import util.user.UserRule; + +import static util.ItUtils.newAdminWsClient; +import static util.ItUtils.runProjectAnalysis; public class SystemAdminPermissionTest { @ClassRule - public static Orchestrator orchestrator = Category4Suite.ORCHESTRATOR; + public static Orchestrator orchestrator = Category1Suite.ORCHESTRATOR; + + @ClassRule + public static UserRule userRule = UserRule.from(orchestrator); @BeforeClass public static void setUpUsers() { orchestrator.resetData(); - WsClient client = ItUtils.newAdminWsClient(orchestrator); + PermissionsService permissionsWsClient = newAdminWsClient(orchestrator).permissions(); - createUser(client, "can_share", "password"); - addPermission("can_share", "shareDashboard"); + userRule.createUser("can_share", "password"); + permissionsWsClient.addUser(new AddUserWsRequest().setLogin("can_share").setPermission("shareDashboard")); - createUser(client, "cannot_share", "password"); + userRule.createUser("cannot_share", "password"); } @AfterClass public static void reset() { - WsClient client = ItUtils.newAdminWsClient(orchestrator); - deactivateUser(client, "can_share"); - deactivateUser(client, "cannot_share"); + userRule.resetUsers(); } /** @@ -64,9 +67,9 @@ public void should_change_ownership_of_shared_measure_filter() throws Exception // 1 - as admin, create measure filter, shared with every one // 2 - as admin, edit filter and set owner to can_share seleniumSuite("change-measure-filter-ownership", - "/permissions/SystemAdminPermissionTest/change-own-measure-filter-owner.html", - "/permissions/SystemAdminPermissionTest/change-other-measure-filter-owner.html", - "/permissions/SystemAdminPermissionTest/change-system-measure-filter-owner.html"); + "/authorisation/SystemAdminPermissionTest/change-own-measure-filter-owner.html", + "/authorisation/SystemAdminPermissionTest/change-other-measure-filter-owner.html", + "/authorisation/SystemAdminPermissionTest/change-system-measure-filter-owner.html"); } /** @@ -75,8 +78,8 @@ public void should_change_ownership_of_shared_measure_filter() throws Exception @Test public void should_change_ownership_of_shared_global_dashboard() throws Exception { seleniumSuite("change-global-dashboard-ownership", - "/permissions/SystemAdminPermissionTest/change-shared-global-dashboard-owner.html", - "/permissions/SystemAdminPermissionTest/change-shared-global-dashboard-owner-failure.html"); + "/authorisation/SystemAdminPermissionTest/change-shared-global-dashboard-owner.html", + "/authorisation/SystemAdminPermissionTest/change-shared-global-dashboard-owner-failure.html"); } /** @@ -84,11 +87,11 @@ public void should_change_ownership_of_shared_global_dashboard() throws Exceptio */ @Test public void should_change_ownership_of_shared_project_dashboard() throws Exception { - orchestrator.executeBuild(SonarScanner.create(ItUtils.projectDir("shared/xoo-sample"))); + runProjectAnalysis(orchestrator, "shared/xoo-sample"); seleniumSuite("change-project-dashboard-ownership", - "/permissions/SystemAdminPermissionTest/change-shared-project-dashboard-owner.html", - "/permissions/SystemAdminPermissionTest/change-shared-project-dashboard-owner-failure.html"); + "/authorisation/SystemAdminPermissionTest/change-shared-project-dashboard-owner.html", + "/authorisation/SystemAdminPermissionTest/change-shared-project-dashboard-owner-failure.html"); } private void seleniumSuite(String suiteName, String... tests) { @@ -96,25 +99,4 @@ private void seleniumSuite(String suiteName, String... tests) { orchestrator.executeSelenese(selenese); } - private static void addPermission(String login, String permission) { - orchestrator.getServer().adminWsClient().post("api/permissions/add_user", - "login", login, - "permission", permission); - } - - private static void createUser(WsClient client, String login, String password) { - client.wsConnector().call( - new PostRequest("api/users/create") - .setParam("login", login) - .setParam("name", login) - .setParam("password", password) - ); - } - - private static void deactivateUser(WsClient client, String login) { - client.wsConnector().call( - new PostRequest("/api/users/deactivate") - .setParam("login", login) - ); - } } diff --git a/it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-other-measure-filter-owner.html b/it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-other-measure-filter-owner.html similarity index 100% rename from it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-other-measure-filter-owner.html rename to it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-other-measure-filter-owner.html diff --git a/it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-own-measure-filter-owner.html b/it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-own-measure-filter-owner.html similarity index 100% rename from it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-own-measure-filter-owner.html rename to it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-own-measure-filter-owner.html diff --git a/it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-shared-global-dashboard-owner-failure.html b/it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-shared-global-dashboard-owner-failure.html similarity index 100% rename from it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-shared-global-dashboard-owner-failure.html rename to it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-shared-global-dashboard-owner-failure.html diff --git a/it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-shared-global-dashboard-owner.html b/it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-shared-global-dashboard-owner.html similarity index 100% rename from it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-shared-global-dashboard-owner.html rename to it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-shared-global-dashboard-owner.html diff --git a/it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-shared-project-dashboard-owner-failure.html b/it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-shared-project-dashboard-owner-failure.html similarity index 100% rename from it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-shared-project-dashboard-owner-failure.html rename to it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-shared-project-dashboard-owner-failure.html diff --git a/it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-shared-project-dashboard-owner.html b/it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-shared-project-dashboard-owner.html similarity index 100% rename from it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-shared-project-dashboard-owner.html rename to it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-shared-project-dashboard-owner.html diff --git a/it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-system-measure-filter-owner.html b/it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-system-measure-filter-owner.html similarity index 100% rename from it/it-tests/src/test/resources/permissions/SystemAdminPermissionTest/change-system-measure-filter-owner.html rename to it/it-tests/src/test/resources/authorisation/SystemAdminPermissionTest/change-system-measure-filter-owner.html