aboutsummaryrefslogtreecommitdiffstats
path: root/it
diff options
context:
space:
mode:
authorJulien Lancelot <julien.lancelot@sonarsource.com>2017-04-13 10:03:36 +0200
committerJulien Lancelot <julien.lancelot@sonarsource.com>2017-04-13 11:51:55 +0200
commit1ff5bd2cb76894f7c184c9df9ff729112ba5a246 (patch)
tree6f9855295e128ffb139cf30485c63ecd57e5b255 /it
parent9ee3c4c5c2f20075f49a86173b4ec5b6c63c8e17 (diff)
downloadsonarqube-1ff5bd2cb76894f7c184c9df9ff729112ba5a246.tar.gz
sonarqube-1ff5bd2cb76894f7c184c9df9ff729112ba5a246.zip
Cleanup organizations ITs
Diffstat (limited to 'it')
-rw-r--r--it/it-tests/src/test/java/it/Category6Suite.java11
-rw-r--r--it/it-tests/src/test/java/it/issue/OrganizationIssueAssignTest.java (renamed from it/it-tests/src/test/java/it/organization/IssueAssignTest.java)4
-rw-r--r--it/it-tests/src/test/java/it/organization/OrganizationTest.java44
-rw-r--r--it/it-tests/src/test/java/it/qualityProfile/OrganizationQualityProfilesPageTest.java (renamed from it/it-tests/src/test/java/it/organization/OrganizationQualityProfilesPageTest.java)2
-rw-r--r--it/it-tests/src/test/java/it/uiExtension/OrganizationUiExtensionsTest.java18
5 files changed, 39 insertions, 40 deletions
diff --git a/it/it-tests/src/test/java/it/Category6Suite.java b/it/it-tests/src/test/java/it/Category6Suite.java
index 8f5f70f0d30..9e627ae9bf5 100644
--- a/it/it-tests/src/test/java/it/Category6Suite.java
+++ b/it/it-tests/src/test/java/it/Category6Suite.java
@@ -20,10 +20,11 @@
package it;
import com.sonar.orchestrator.Orchestrator;
-import it.organization.IssueAssignTest;
+import it.issue.OrganizationIssueAssignTest;
import it.organization.OrganizationMembershipTest;
-import it.organization.OrganizationQualityProfilesPageTest;
import it.organization.OrganizationTest;
+import it.qualityProfile.OrganizationQualityProfilesPageTest;
+import it.uiExtension.OrganizationUiExtensionsTest;
import it.user.OrganizationIdentityProviderTest;
import org.junit.BeforeClass;
import org.junit.ClassRule;
@@ -39,11 +40,12 @@ import static util.ItUtils.xooPlugin;
*/
@RunWith(Suite.class)
@Suite.SuiteClasses({
- IssueAssignTest.class,
OrganizationIdentityProviderTest.class,
+ OrganizationIssueAssignTest.class,
OrganizationMembershipTest.class,
OrganizationQualityProfilesPageTest.class,
- OrganizationTest.class
+ OrganizationTest.class,
+ OrganizationUiExtensionsTest.class,
})
public class Category6Suite {
@@ -51,6 +53,7 @@ public class Category6Suite {
public static final Orchestrator ORCHESTRATOR = Orchestrator.builderEnv()
.addPlugin(xooPlugin())
.addPlugin(pluginArtifact("base-auth-plugin"))
+ .addPlugin(pluginArtifact("ui-extensions-plugin"))
.build();
@BeforeClass
diff --git a/it/it-tests/src/test/java/it/organization/IssueAssignTest.java b/it/it-tests/src/test/java/it/issue/OrganizationIssueAssignTest.java
index dd275e2e7a5..3790627a7ce 100644
--- a/it/it-tests/src/test/java/it/organization/IssueAssignTest.java
+++ b/it/it-tests/src/test/java/it/issue/OrganizationIssueAssignTest.java
@@ -18,7 +18,7 @@
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
-package it.organization;
+package it.issue;
import com.sonar.orchestrator.Orchestrator;
import it.Category6Suite;
@@ -57,7 +57,7 @@ import static util.ItUtils.restoreProfile;
import static util.ItUtils.runProjectAnalysis;
import static util.ItUtils.setServerProperty;
-public class IssueAssignTest {
+public class OrganizationIssueAssignTest {
private final static String ORGANIZATION_KEY = newOrganizationKey();
private final static String OTHER_ORGANIZATION_KEY = newOrganizationKey();
diff --git a/it/it-tests/src/test/java/it/organization/OrganizationTest.java b/it/it-tests/src/test/java/it/organization/OrganizationTest.java
index 22b97189368..933cef82a3d 100644
--- a/it/it-tests/src/test/java/it/organization/OrganizationTest.java
+++ b/it/it-tests/src/test/java/it/organization/OrganizationTest.java
@@ -68,6 +68,7 @@ public class OrganizationTest {
private static final String URL = "https://www.foo.fr";
private static final String AVATAR_URL = "https://www.foo.fr/corporate_logo.png";
private static final String SETTING_ANYONE_CAN_CREATE_ORGANIZATIONS = "sonar.organizations.anyoneCanCreate";
+ private static final String USER_LOGIN = "foo";
@ClassRule
public static Orchestrator orchestrator = Category6Suite.ORCHESTRATOR;
@@ -89,6 +90,7 @@ public class OrganizationTest {
public void setUp() throws Exception {
resetSettings(orchestrator, null, SETTING_ANYONE_CAN_CREATE_ORGANIZATIONS);
deleteOrganizationsIfExists(orchestrator, KEY, "an-org");
+ userRule.deactivateUsers(USER_LOGIN);
}
@After
@@ -163,10 +165,10 @@ public class OrganizationTest {
verifyUserNotAuthenticated(service -> service.delete(KEY));
// verify logged in user without any permission can't create update nor delete an organization by default
- userRule.createUser("john", "doh");
- verifyUserNotAuthorized("john", "doh", service -> service.create(new CreateWsRequest.Builder().setName("An org").build()));
- verifyUserNotAuthorized("john", "doh", service -> service.update(new UpdateWsRequest.Builder().setKey(KEY).setName("new name").build()));
- verifyUserNotAuthorized("john", "doh", service -> service.delete(KEY));
+ userRule.createUser(USER_LOGIN, USER_LOGIN);
+ verifyUserNotAuthorized(USER_LOGIN, USER_LOGIN, service -> service.create(new CreateWsRequest.Builder().setName("An org").build()));
+ verifyUserNotAuthorized(USER_LOGIN, USER_LOGIN, service -> service.update(new UpdateWsRequest.Builder().setKey(KEY).setName("new name").build()));
+ verifyUserNotAuthorized(USER_LOGIN, USER_LOGIN, service -> service.delete(KEY));
ItUtils.setServerProperty(orchestrator, SETTING_ANYONE_CAN_CREATE_ORGANIZATIONS, "true");
// verify anonymous still can't create update nor delete an organization if property is true
@@ -175,12 +177,12 @@ public class OrganizationTest {
verifyUserNotAuthenticated(service -> service.delete(KEY));
// verify logged in user without any permission can't create nor update nor delete an organization if property is true
- verifyUserNotAuthorized("john", "doh", service -> service.update(new UpdateWsRequest.Builder().setKey(KEY).setName("new name").build()));
- verifyUserNotAuthorized("john", "doh", service -> service.delete(KEY));
+ verifyUserNotAuthorized(USER_LOGIN, USER_LOGIN, service -> service.update(new UpdateWsRequest.Builder().setKey(KEY).setName("new name").build()));
+ verifyUserNotAuthorized(USER_LOGIN, USER_LOGIN, service -> service.delete(KEY));
// clean-up
adminOrganizationService.delete(KEY);
verifySingleSearchResult(
- verifyUserAuthorized("john", "doh", service -> service.create(new CreateWsRequest.Builder().setName("An org").build())).getOrganization(),
+ verifyUserAuthorized(USER_LOGIN, USER_LOGIN, service -> service.create(new CreateWsRequest.Builder().setName("An org").build())).getOrganization(),
"An org", null, null, null);
}
@@ -245,21 +247,21 @@ public class OrganizationTest {
@Test
public void create_fails_if_user_is_not_root() {
- userRule.createUser("foo", "bar");
+ userRule.createUser(USER_LOGIN, USER_LOGIN);
CreateWsRequest createWsRequest = new CreateWsRequest.Builder()
.setName("bla bla")
.build();
- OrganizationService fooUserOrganizationService = ItUtils.newUserWsClient(orchestrator, "foo", "bar").organizations();
+ OrganizationService fooUserOrganizationService = ItUtils.newUserWsClient(orchestrator, USER_LOGIN, USER_LOGIN).organizations();
expect403HttpError(() -> fooUserOrganizationService.create(createWsRequest));
- userRule.setRoot("foo");
+ userRule.setRoot(USER_LOGIN);
assertThat(fooUserOrganizationService.create(createWsRequest).getOrganization().getKey()).isEqualTo("bla-bla");
// delete org, attempt recreate when no root anymore and ensure it can't anymore
fooUserOrganizationService.delete("bla-bla");
- userRule.unsetRoot("foo");
+ userRule.unsetRoot(USER_LOGIN);
expect403HttpError(() -> fooUserOrganizationService.create(createWsRequest));
}
@@ -274,13 +276,13 @@ public class OrganizationTest {
.getOrganization();
verifySingleSearchResult(createdOrganization, KEY, null, null, null);
- userRule.createUser("bob", "bob");
+ userRule.createUser(USER_LOGIN, USER_LOGIN);
userRule.removeGroups("sonar-users");
- adminOrganizationService.addMember(KEY, "bob");
- addPermissionsToUser(KEY, "bob", "provisioning", "scan");
+ adminOrganizationService.addMember(KEY, USER_LOGIN);
+ addPermissionsToUser(KEY, USER_LOGIN, "provisioning", "scan");
ItUtils.runProjectAnalysis(orchestrator, "shared/xoo-sample",
- "sonar.organization", KEY, "sonar.login", "bob", "sonar.password", "bob");
+ "sonar.organization", KEY, "sonar.login", USER_LOGIN, "sonar.password", USER_LOGIN);
ComponentsService componentsService = ItUtils.newAdminWsClient(orchestrator).components();
assertThat(searchSampleProject(KEY, componentsService).getComponentsList()).hasSize(1);
}
@@ -329,18 +331,18 @@ public class OrganizationTest {
GroupManagement groupManagement = userRule.forOrganization(KEY);
- userRule.createUser("bob", "bob");
- adminOrganizationService.addMember(KEY, "bob");
+ userRule.createUser(USER_LOGIN, USER_LOGIN);
+ adminOrganizationService.addMember(KEY, USER_LOGIN);
groupManagement.createGroup("grp1");
groupManagement.createGroup("grp2");
- groupManagement.associateGroupsToUser("bob", "grp1", "grp2");
- assertThat(groupManagement.getUserGroups("bob").getGroups())
+ groupManagement.associateGroupsToUser(USER_LOGIN, "grp1", "grp2");
+ assertThat(groupManagement.getUserGroups(USER_LOGIN).getGroups())
.extracting(Groups.Group::getName)
.contains("grp1", "grp2");
- addPermissionsToUser(KEY, "bob", "provisioning", "scan");
+ addPermissionsToUser(KEY, USER_LOGIN, "provisioning", "scan");
ItUtils.runProjectAnalysis(orchestrator, "shared/xoo-sample",
- "sonar.organization", KEY, "sonar.login", "bob", "sonar.password", "bob");
+ "sonar.organization", KEY, "sonar.login", USER_LOGIN, "sonar.password", USER_LOGIN);
ComponentsService componentsService = ItUtils.newAdminWsClient(orchestrator).components();
assertThat(searchSampleProject(KEY, componentsService).getComponentsList()).hasSize(1);
diff --git a/it/it-tests/src/test/java/it/organization/OrganizationQualityProfilesPageTest.java b/it/it-tests/src/test/java/it/qualityProfile/OrganizationQualityProfilesPageTest.java
index b67c9e14fd3..eeeab7003b0 100644
--- a/it/it-tests/src/test/java/it/organization/OrganizationQualityProfilesPageTest.java
+++ b/it/it-tests/src/test/java/it/qualityProfile/OrganizationQualityProfilesPageTest.java
@@ -17,7 +17,7 @@
* 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.organization;
+package it.qualityProfile;
import com.codeborne.selenide.Condition;
import com.sonar.orchestrator.Orchestrator;
diff --git a/it/it-tests/src/test/java/it/uiExtension/OrganizationUiExtensionsTest.java b/it/it-tests/src/test/java/it/uiExtension/OrganizationUiExtensionsTest.java
index e9f1e3fc08e..41150c6d192 100644
--- a/it/it-tests/src/test/java/it/uiExtension/OrganizationUiExtensionsTest.java
+++ b/it/it-tests/src/test/java/it/uiExtension/OrganizationUiExtensionsTest.java
@@ -21,6 +21,7 @@ package it.uiExtension;
import com.codeborne.selenide.Condition;
import com.sonar.orchestrator.Orchestrator;
+import it.Category6Suite;
import org.junit.BeforeClass;
import org.junit.ClassRule;
import org.junit.Rule;
@@ -33,21 +34,15 @@ import pageobjects.Navigation;
import static com.codeborne.selenide.Condition.text;
import static com.codeborne.selenide.Selenide.$;
import static com.codeborne.selenide.WebDriverRunner.url;
-import static java.util.Collections.emptyMap;
-import static java.util.Locale.ENGLISH;
-import static org.apache.commons.lang.RandomStringUtils.randomAlphabetic;
+import static it.Category6Suite.enableOrganizationsSupport;
import static org.assertj.core.api.Assertions.assertThat;
import static util.ItUtils.newAdminWsClient;
-import static util.ItUtils.pluginArtifact;
-import static util.ItUtils.xooPlugin;
+import static util.ItUtils.newOrganizationKey;
public class OrganizationUiExtensionsTest {
@ClassRule
- public static final Orchestrator orchestrator = Orchestrator.builderEnv()
- .addPlugin(xooPlugin())
- .addPlugin(pluginArtifact("ui-extensions-plugin"))
- .build();
+ public static Orchestrator orchestrator = Category6Suite.ORCHESTRATOR;
@Rule
public Navigation nav = Navigation.get(orchestrator);
@@ -56,9 +51,8 @@ public class OrganizationUiExtensionsTest {
@BeforeClass
public static void setUp() throws Exception {
- orchestrator.resetData();
adminClient = newAdminWsClient(orchestrator);
- orchestrator.getServer().post("api/organizations/enable_support", emptyMap());
+ enableOrganizationsSupport();
}
@Test
@@ -86,7 +80,7 @@ public class OrganizationUiExtensionsTest {
}
private static String createOrganization() {
- String keyAndName = randomAlphabetic(32).toLowerCase(ENGLISH);
+ String keyAndName = newOrganizationKey();
adminClient.organizations().create(new CreateWsRequest.Builder().setKey(keyAndName).setName(keyAndName).build()).getOrganization();
return keyAndName;
}