Format all files using google-java-format
Change-Id: Ief1bdcc5fb098d8e3fd57bd28544b62979dd5e20
diff --git a/src/main/java/com/ericsson/gerrit/plugins/projectgroupstructure/Module.java b/src/main/java/com/ericsson/gerrit/plugins/projectgroupstructure/Module.java
index 5e80a96..088f253 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/projectgroupstructure/Module.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/projectgroupstructure/Module.java
@@ -18,7 +18,6 @@
import com.google.gerrit.server.validators.ProjectCreationValidationListener;
import com.google.inject.AbstractModule;
-
class Module extends AbstractModule {
@Override
protected void configure() {
diff --git a/src/main/java/com/ericsson/gerrit/plugins/projectgroupstructure/ProjectCreationValidator.java b/src/main/java/com/ericsson/gerrit/plugins/projectgroupstructure/ProjectCreationValidator.java
index b7923bc..4a7f6a4 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/projectgroupstructure/ProjectCreationValidator.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/projectgroupstructure/ProjectCreationValidator.java
@@ -26,8 +26,8 @@
import com.google.gerrit.extensions.restapi.TopLevelResource;
import com.google.gerrit.reviewdb.client.AccountGroup;
import com.google.gerrit.reviewdb.client.Project;
-import com.google.gerrit.server.config.AllProjectsNameProvider;
import com.google.gerrit.server.account.GroupMembership;
+import com.google.gerrit.server.config.AllProjectsNameProvider;
import com.google.gerrit.server.config.PluginConfigFactory;
import com.google.gerrit.server.group.CreateGroup;
import com.google.gerrit.server.project.CreateProjectArgs;
@@ -38,23 +38,18 @@
import com.google.gwtorm.server.OrmException;
import com.google.inject.Inject;
import com.google.inject.Singleton;
-
+import java.io.IOException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.io.IOException;
-
@Singleton
-public class ProjectCreationValidator
- implements ProjectCreationValidationListener {
- private static final Logger log =
- LoggerFactory.getLogger(ProjectCreationValidator.class);
+public class ProjectCreationValidator implements ProjectCreationValidationListener {
+ private static final Logger log = LoggerFactory.getLogger(ProjectCreationValidator.class);
private static final String AN_ERROR_OCCURRED_MSG =
"An error occurred while creating project, please contact Gerrit support";
- private static final String SEE_DOCUMENTATION_MSG =
- "\n\nSee documentation for more info: %s";
+ private static final String SEE_DOCUMENTATION_MSG = "\n\nSee documentation for more info: %s";
private static final String MUST_BE_OWNER_TO_CREATE_PROJECT_MSG =
"You must be owner of the parent project \"%s\" to create a nested project."
@@ -71,20 +66,18 @@
+ "Please create a root parent project (project with option "
+ "\"Only serve as parent for other projects\") that will hold "
+ "all your access rights and then create your regular project that "
- + "inherits rights from your root project.\n\n" + "Example:\n"
+ + "inherits rights from your root project.\n\n"
+ + "Example:\n"
+ "\"someOrganization\"->parent project\n"
+ "\"someOrganization/someProject\"->regular project."
+ SEE_DOCUMENTATION_MSG;
private static final String PROJECT_MUST_START_WITH_PARENT_NAME_MSG =
- "Project name must start with parent project name, e.g. %s."
- + SEE_DOCUMENTATION_MSG;
+ "Project name must start with parent project name, e.g. %s." + SEE_DOCUMENTATION_MSG;
- static final String DELEGATE_PROJECT_CREATION_TO =
- "delegateProjectCreationTo";
+ static final String DELEGATE_PROJECT_CREATION_TO = "delegateProjectCreationTo";
- static final String DISABLE_GRANTING_PROJECT_OWNERSHIP =
- "disableGrantingProjectOwnership";
+ static final String DISABLE_GRANTING_PROJECT_OWNERSHIP = "disableGrantingProjectOwnership";
private final CreateGroup.Factory createGroupFactory;
private final String documentationUrl;
@@ -93,7 +86,8 @@
private final String pluginName;
@Inject
- public ProjectCreationValidator(CreateGroup.Factory createGroupFactory,
+ public ProjectCreationValidator(
+ CreateGroup.Factory createGroupFactory,
@PluginCanonicalWebUrl String url,
AllProjectsNameProvider allProjectsName,
PluginConfigFactory cfg,
@@ -106,8 +100,7 @@
}
@Override
- public void validateNewProject(CreateProjectArgs args)
- throws ValidationException {
+ public void validateNewProject(CreateProjectArgs args) throws ValidationException {
String name = args.getProjectName();
log.debug("validating creation of {}", name);
if (name.contains(" ")) {
@@ -141,97 +134,95 @@
private boolean configDisableGrantingOwnership(ProjectControl parentCtrl)
throws ValidationException {
try {
- return cfg
- .getFromProjectConfigWithInheritance(
+ return cfg.getFromProjectConfigWithInheritance(
parentCtrl.getProject().getNameKey(), pluginName)
.getBoolean(DISABLE_GRANTING_PROJECT_OWNERSHIP, false);
} catch (NoSuchProjectException e) {
- log.error("Failed to check project config for "
- + parentCtrl.getProject().getName() + ": " + e.getMessage(), e);
+ log.error(
+ "Failed to check project config for "
+ + parentCtrl.getProject().getName()
+ + ": "
+ + e.getMessage(),
+ e);
throw new ValidationException(AN_ERROR_OCCURRED_MSG);
}
}
- private AccountGroup.UUID createGroup(String name)
- throws ValidationException {
+ private AccountGroup.UUID createGroup(String name) throws ValidationException {
try {
GroupInfo groupInfo = null;
try {
- groupInfo = createGroupFactory.create(name)
- .apply(TopLevelResource.INSTANCE, new GroupInput());
+ groupInfo =
+ createGroupFactory.create(name).apply(TopLevelResource.INSTANCE, new GroupInput());
} catch (ResourceConflictException e) {
// name already exists, make sure it is unique by adding a abbreviated
// sha1
- String nameWithSha1 = name + "-" + Hashing.sha256()
- .hashString(name, Charsets.UTF_8).toString().substring(0, 7);
+ String nameWithSha1 =
+ name
+ + "-"
+ + Hashing.sha256().hashString(name, Charsets.UTF_8).toString().substring(0, 7);
log.info(
"Failed to create group name {} because of a conflict: {}, trying to create {} instead",
- name, e.getMessage(), nameWithSha1);
- groupInfo = createGroupFactory.create(nameWithSha1)
- .apply(TopLevelResource.INSTANCE, new GroupInput());
+ name,
+ e.getMessage(),
+ nameWithSha1);
+ groupInfo =
+ createGroupFactory
+ .create(nameWithSha1)
+ .apply(TopLevelResource.INSTANCE, new GroupInput());
}
return AccountGroup.UUID.parse(groupInfo.id);
- } catch (RestApiException | OrmException | IOException e ) {
+ } catch (RestApiException | OrmException | IOException e) {
log.error("Failed to create project " + name + ": " + e.getMessage(), e);
throw new ValidationException(AN_ERROR_OCCURRED_MSG);
}
}
- private void validateRootProject(String name, boolean permissionOnly)
- throws ValidationException {
+ private void validateRootProject(String name, boolean permissionOnly) throws ValidationException {
log.debug("validating root project name {}", name);
if (name.contains("/")) {
log.debug("rejecting creation of {}: name contains slashes", name);
- throw new ValidationException(String
- .format(ROOT_PROJECT_CANNOT_CONTAINS_SLASHES_MSG, documentationUrl));
+ throw new ValidationException(
+ String.format(ROOT_PROJECT_CANNOT_CONTAINS_SLASHES_MSG, documentationUrl));
}
if (!permissionOnly) {
- log.debug("rejecting creation of {}: missing permissions only option",
- name);
- throw new ValidationException(String
- .format(REGULAR_PROJECT_NOT_ALLOWED_AS_ROOT_MSG, documentationUrl));
+ log.debug("rejecting creation of {}: missing permissions only option", name);
+ throw new ValidationException(
+ String.format(REGULAR_PROJECT_NOT_ALLOWED_AS_ROOT_MSG, documentationUrl));
}
log.debug("allowing creation of root project {}", name);
}
- private void validateProject(String name, ProjectControl parentCtrl)
- throws ValidationException {
+ private void validateProject(String name, ProjectControl parentCtrl) throws ValidationException {
log.debug("validating name prefix of {}", name);
Project parent = parentCtrl.getProject();
String prefix = parent.getName() + "/";
if (!name.startsWith(prefix)) {
- log.debug("rejecting creation of {}: name is not starting with {}", name,
- prefix);
+ log.debug("rejecting creation of {}: name is not starting with {}", name, prefix);
throw new ValidationException(
- String.format(PROJECT_MUST_START_WITH_PARENT_NAME_MSG, prefix + name,
- documentationUrl));
+ String.format(PROJECT_MUST_START_WITH_PARENT_NAME_MSG, prefix + name, documentationUrl));
}
if (!parentCtrl.isOwner() && !isInDelegatingGroup(parentCtrl)) {
- log.debug("rejecting creation of {}: user is not owner of {}", name,
- parent.getName());
+ log.debug("rejecting creation of {}: user is not owner of {}", name, parent.getName());
throw new ValidationException(
- String.format(MUST_BE_OWNER_TO_CREATE_PROJECT_MSG, parent.getName(),
- documentationUrl));
+ String.format(MUST_BE_OWNER_TO_CREATE_PROJECT_MSG, parent.getName(), documentationUrl));
}
log.debug("allowing creation of project {}", name);
}
private boolean isInDelegatingGroup(ProjectControl parentCtrl) {
try {
- GroupReference delegateProjectCreationTo = cfg
- .getFromProjectConfigWithInheritance(
- parentCtrl.getProject().getNameKey(), pluginName)
- .getGroupReference(DELEGATE_PROJECT_CREATION_TO);
+ GroupReference delegateProjectCreationTo =
+ cfg.getFromProjectConfigWithInheritance(parentCtrl.getProject().getNameKey(), pluginName)
+ .getGroupReference(DELEGATE_PROJECT_CREATION_TO);
if (delegateProjectCreationTo == null) {
return false;
}
log.debug("delegateProjectCreationTo: {}", delegateProjectCreationTo);
- GroupMembership effectiveGroups =
- parentCtrl.getUser().getEffectiveGroups();
+ GroupMembership effectiveGroups = parentCtrl.getUser().getEffectiveGroups();
return effectiveGroups.contains(delegateProjectCreationTo.getUUID());
} catch (NoSuchProjectException e) {
- log.error("isInDelegatingGroup with error ({}): {}",
- e.getClass().getName(), e.getMessage());
+ log.error("isInDelegatingGroup with error ({}): {}", e.getClass().getName(), e.getMessage());
return false;
}
}
diff --git a/src/test/java/com/ericsson/gerrit/plugins/projectgroupstructure/ProjectCreationValidatorIT.java b/src/test/java/com/ericsson/gerrit/plugins/projectgroupstructure/ProjectCreationValidatorIT.java
index f5adb68..72dfbe8 100644
--- a/src/test/java/com/ericsson/gerrit/plugins/projectgroupstructure/ProjectCreationValidatorIT.java
+++ b/src/test/java/com/ericsson/gerrit/plugins/projectgroupstructure/ProjectCreationValidatorIT.java
@@ -32,13 +32,12 @@
import com.google.gerrit.reviewdb.client.Project;
import com.google.gerrit.server.git.ProjectConfig;
import com.google.gerrit.server.project.ProjectState;
-
import org.junit.Before;
import org.junit.Test;
@TestPlugin(
- name = "project-group-structure",
- sysModule = "com.ericsson.gerrit.plugins.projectgroupstructure.Module"
+ name = "project-group-structure",
+ sysModule = "com.ericsson.gerrit.plugins.projectgroupstructure.Module"
)
public class ProjectCreationValidatorIT extends LightweightPluginDaemonTest {
@@ -58,22 +57,18 @@
public void shouldProjectWithASpaceInTheirName() throws Exception {
ProjectInput in = new ProjectInput();
in.permissionsOnly = true;
- RestResponse r =
- userRestSession.put("/projects/" + Url.encode("project with space"), in);
+ RestResponse r = userRestSession.put("/projects/" + Url.encode("project with space"), in);
r.assertConflict();
- assertThat(r.getEntityContent())
- .contains("Project name cannot contains spaces");
+ assertThat(r.getEntityContent()).contains("Project name cannot contains spaces");
}
@Test
public void shouldAllowAnyUsersToCreateUnderAllProjects() throws Exception {
ProjectInput in = new ProjectInput();
in.permissionsOnly = true;
- adminRestSession.put("/projects/" + name("someProject"), in)
- .assertCreated();
+ adminRestSession.put("/projects/" + name("someProject"), in).assertCreated();
- userRestSession.put("/projects/" + name("someOtherProject"), in)
- .assertCreated();
+ userRestSession.put("/projects/" + name("someOtherProject"), in).assertCreated();
}
@Test
@@ -85,16 +80,13 @@
userRestSession.put("/projects/" + parent, in).assertCreated();
// Creation is rejected when root project name contains slashes
- RestResponse r =
- userRestSession.put("/projects/" + Url.encode("a/parentProject"), in);
+ RestResponse r = userRestSession.put("/projects/" + Url.encode("a/parentProject"), in);
r.assertConflict();
- assertThat(r.getEntityContent())
- .contains("Root project name cannot contains slashes");
+ assertThat(r.getEntityContent()).contains("Root project name cannot contains slashes");
}
@Test
- public void shouldBlockProjectWithParentNotPartOfProjectName()
- throws Exception {
+ public void shouldBlockProjectWithParentNotPartOfProjectName() throws Exception {
// Root project is OK without parent part of the name
ProjectInput in = new ProjectInput();
in.permissionsOnly = true;
@@ -106,20 +98,17 @@
in.parent = parent;
RestResponse r = userRestSession.put("/projects/childProject", in);
r.assertConflict();
- assertThat(r.getEntityContent())
- .contains("Project name must start with parent project name");
+ assertThat(r.getEntityContent()).contains("Project name must start with parent project name");
// Creation is OK when project name starts with parent
- userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in)
- .assertCreated();
+ userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in).assertCreated();
// Creation is rejected when project name does not start with nested parent
String nestedParent = parent + "/childProject";
in.parent = nestedParent;
r = userRestSession.put("/projects/grandchild", in);
r.assertConflict();
- assertThat(r.getEntityContent())
- .contains("Project name must start with parent project name");
+ assertThat(r.getEntityContent()).contains("Project name must start with parent project name");
// Creation is OK when project name starts with nested parent
userRestSession
@@ -141,16 +130,13 @@
// Creation is rejected when user is not owner of parent
in = new ProjectInput();
in.parent = parent;
- RestResponse r = userRestSession
- .put("/projects/" + Url.encode(parent + "/childProject"), in);
+ RestResponse r = userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in);
r.assertConflict();
- assertThat(r.getEntityContent())
- .contains("You must be owner of the parent project");
+ assertThat(r.getEntityContent()).contains("You must be owner of the parent project");
// Creation is OK when user is owner of parent
g.addMembers(user.username);
- userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in)
- .assertCreated();
+ userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in).assertCreated();
}
@Test
@@ -164,8 +150,7 @@
// Child project without name of parent as prefix
in = new ProjectInput();
in.parent = parent;
- adminRestSession.put("/projects/" + Url.encode("orgA/childProject"), in)
- .assertCreated();
+ adminRestSession.put("/projects/" + Url.encode("orgA/childProject"), in).assertCreated();
}
@Test
@@ -175,11 +160,10 @@
ProjectInput in = new ProjectInput();
in.permissionsOnly = true;
userRestSession.put("/projects/" + rootProject, in).assertCreated();
- ProjectState projectState =
- projectCache.get(new Project.NameKey(rootProject));
+ ProjectState projectState = projectCache.get(new Project.NameKey(rootProject));
assertThat(projectState.getOwners().size()).isEqualTo(1);
- assertThat(projectState.getOwners()).contains(groupCache
- .get(new AccountGroup.NameKey(rootProject + "-admins")).getGroupUUID());
+ assertThat(projectState.getOwners())
+ .contains(groupCache.get(new AccountGroup.NameKey(rootProject + "-admins")).getGroupUUID());
// case when <project-name>-admins group already exists
rootProject = name("rootProject2");
@@ -188,19 +172,22 @@
userRestSession.put("/projects/" + rootProject, in).assertCreated();
projectState = projectCache.get(new Project.NameKey(rootProject));
assertThat(projectState.getOwners().size()).isEqualTo(1);
- String expectedOwnerGroup = existingGroupName + "-"
- + Hashing.sha256().hashString(existingGroupName, Charsets.UTF_8)
- .toString().substring(0, 7);
- assertThat(projectState.getOwners()).contains(groupCache
- .get(new AccountGroup.NameKey(expectedOwnerGroup)).getGroupUUID());
+ String expectedOwnerGroup =
+ existingGroupName
+ + "-"
+ + Hashing.sha256()
+ .hashString(existingGroupName, Charsets.UTF_8)
+ .toString()
+ .substring(0, 7);
+ assertThat(projectState.getOwners())
+ .contains(groupCache.get(new AccountGroup.NameKey(expectedOwnerGroup)).getGroupUUID());
}
@Test
public void shouldBlockRootCodeProject() throws Exception {
RestResponse r = userRestSession.put("/projects/" + Url.encode("project1"));
r.assertConflict();
- assertThat(r.getEntityContent())
- .contains("Regular projects are not allowed as root");
+ assertThat(r.getEntityContent()).contains("Regular projects are not allowed as root");
}
@Test
@@ -216,11 +203,9 @@
in = new ProjectInput();
in.parent = parent;
- RestResponse r = userRestSession
- .put("/projects/" + Url.encode(parent + "/childProject"), in);
+ RestResponse r = userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in);
r.assertConflict();
- assertThat(r.getEntityContent())
- .contains("You must be owner of the parent project");
+ assertThat(r.getEntityContent()).contains("You must be owner of the parent project");
// the user is in the delegating group
String delegatingGroup = name("groupB");
@@ -239,8 +224,7 @@
}
@Test
- public void shouldMakeUserOwnerIfNotAlreadyOwnerByInheritance()
- throws Exception {
+ public void shouldMakeUserOwnerIfNotAlreadyOwnerByInheritance() throws Exception {
String parent = name("parentProject");
ProjectInput in = new ProjectInput();
in.permissionsOnly = true;
@@ -252,37 +236,39 @@
Project.NameKey parentNameKey = new Project.NameKey(parent);
ProjectConfig cfg = projectCache.checkedGet(parentNameKey).getConfig();
String gId = gApi.groups().id(delegatingGroup).get().id;
- cfg.getPluginConfig(PLUGIN_NAME).setGroupReference(
- ProjectCreationValidator.DELEGATE_PROJECT_CREATION_TO,
- new GroupReference(AccountGroup.UUID.parse(gId), delegatingGroup));
+ cfg.getPluginConfig(PLUGIN_NAME)
+ .setGroupReference(
+ ProjectCreationValidator.DELEGATE_PROJECT_CREATION_TO,
+ new GroupReference(AccountGroup.UUID.parse(gId), delegatingGroup));
saveProjectConfig(parentNameKey, cfg);
// normal case, when <project-name>-admins group does not exist
in = new ProjectInput();
in.parent = parent;
String childProject = parent + "/childProject";
- userRestSession.put("/projects/" + Url.encode(childProject), in)
- .assertCreated();
- ProjectState projectState =
- projectCache.get(new Project.NameKey(childProject));
+ userRestSession.put("/projects/" + Url.encode(childProject), in).assertCreated();
+ ProjectState projectState = projectCache.get(new Project.NameKey(childProject));
assertThat(projectState.getOwners().size()).isEqualTo(1);
- assertThat(projectState.getOwners()).contains(
- groupCache.get(new AccountGroup.NameKey(childProject + "-admins"))
- .getGroupUUID());
+ assertThat(projectState.getOwners())
+ .contains(
+ groupCache.get(new AccountGroup.NameKey(childProject + "-admins")).getGroupUUID());
// case when <project-name>-admins group already exists
String childProject2 = parent + "/childProject2";
String existingGroupName = childProject2 + "-admins";
gApi.groups().create(existingGroupName);
- userRestSession.put("/projects/" + Url.encode(childProject2), in)
- .assertCreated();
+ userRestSession.put("/projects/" + Url.encode(childProject2), in).assertCreated();
projectState = projectCache.get(new Project.NameKey(childProject2));
assertThat(projectState.getOwners().size()).isEqualTo(1);
- String expectedOwnerGroup = existingGroupName + "-"
- + Hashing.sha256().hashString(existingGroupName, Charsets.UTF_8)
- .toString().substring(0, 7);
- assertThat(projectState.getOwners()).contains(groupCache
- .get(new AccountGroup.NameKey(expectedOwnerGroup)).getGroupUUID());
+ String expectedOwnerGroup =
+ existingGroupName
+ + "-"
+ + Hashing.sha256()
+ .hashString(existingGroupName, Charsets.UTF_8)
+ .toString()
+ .substring(0, 7);
+ assertThat(projectState.getOwners())
+ .contains(groupCache.get(new AccountGroup.NameKey(expectedOwnerGroup)).getGroupUUID());
}
@Test
@@ -299,20 +285,19 @@
Project.NameKey parentNameKey = new Project.NameKey(parent);
ProjectConfig cfg = projectCache.checkedGet(parentNameKey).getConfig();
String gId = gApi.groups().id(delegatingGroup).get().id;
- cfg.getPluginConfig(PLUGIN_NAME).setGroupReference(
- ProjectCreationValidator.DELEGATE_PROJECT_CREATION_TO,
- new GroupReference(AccountGroup.UUID.parse(gId), delegatingGroup));
- cfg.getPluginConfig(PLUGIN_NAME).setBoolean(
- ProjectCreationValidator.DISABLE_GRANTING_PROJECT_OWNERSHIP, true);
+ cfg.getPluginConfig(PLUGIN_NAME)
+ .setGroupReference(
+ ProjectCreationValidator.DELEGATE_PROJECT_CREATION_TO,
+ new GroupReference(AccountGroup.UUID.parse(gId), delegatingGroup));
+ cfg.getPluginConfig(PLUGIN_NAME)
+ .setBoolean(ProjectCreationValidator.DISABLE_GRANTING_PROJECT_OWNERSHIP, true);
saveProjectConfig(parentNameKey, cfg);
in = new ProjectInput();
in.parent = parent;
String childProject = parent + "/childProject";
- userRestSession.put("/projects/" + Url.encode(childProject), in)
- .assertCreated();
- ProjectState projectState =
- projectCache.get(new Project.NameKey(childProject));
+ userRestSession.put("/projects/" + Url.encode(childProject), in).assertCreated();
+ ProjectState projectState = projectCache.get(new Project.NameKey(childProject));
assertThat(projectState.getOwners().size()).isEqualTo(0);
}
@@ -329,11 +314,9 @@
in = new ProjectInput();
in.parent = parent;
- RestResponse r = userRestSession
- .put("/projects/" + Url.encode(parent + "/childProject"), in);
+ RestResponse r = userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in);
r.assertConflict();
- assertThat(r.getEntityContent())
- .contains("You must be owner of the parent project");
+ assertThat(r.getEntityContent()).contains("You must be owner of the parent project");
// the user is in the delegating group
String delegatingGroup = name("groupB");
@@ -361,11 +344,9 @@
in = new ProjectInput();
in.parent = parent;
- RestResponse r = userRestSession
- .put("/projects/" + Url.encode(parent + "/childProject"), in);
+ RestResponse r = userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in);
r.assertConflict();
- assertThat(r.getEntityContent())
- .contains("You must be owner of the parent project");
+ assertThat(r.getEntityContent()).contains("You must be owner of the parent project");
// the user is in the nested delegating group
String delegatingGroup = name("groupB");
@@ -401,11 +382,9 @@
in = new ProjectInput();
in.parent = parent;
- RestResponse r = userRestSession
- .put("/projects/" + Url.encode(parent + "/childProject"), in);
+ RestResponse r = userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in);
r.assertConflict();
- assertThat(r.getEntityContent())
- .contains("You must be owner of the parent project");
+ assertThat(r.getEntityContent()).contains("You must be owner of the parent project");
// the user is in the delegating group
String delegatingGroup = name("groupB");
@@ -415,12 +394,12 @@
Project.NameKey parentNameKey = new Project.NameKey(parent);
ProjectConfig cfg = projectCache.checkedGet(parentNameKey).getConfig();
String gId = gApi.groups().id(delegatingGroup).get().id;
- cfg.getPluginConfig(PLUGIN_NAME).setGroupReference(
- ProjectCreationValidator.DELEGATE_PROJECT_CREATION_TO,
- new GroupReference(AccountGroup.UUID.parse(gId), delegatingGroup));
+ cfg.getPluginConfig(PLUGIN_NAME)
+ .setGroupReference(
+ ProjectCreationValidator.DELEGATE_PROJECT_CREATION_TO,
+ new GroupReference(AccountGroup.UUID.parse(gId), delegatingGroup));
saveProjectConfig(parentNameKey, cfg);
- userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in)
- .assertConflict();
+ userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in).assertConflict();
}
@Test
@@ -436,11 +415,9 @@
in = new ProjectInput();
in.parent = parent;
- RestResponse r = userRestSession
- .put("/projects/" + Url.encode(parent + "/childProject"), in);
+ RestResponse r = userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in);
r.assertConflict();
- assertThat(r.getEntityContent())
- .contains("You must be owner of the parent project");
+ assertThat(r.getEntityContent()).contains("You must be owner of the parent project");
// The delegating group is not created
String delegatingGroup = name("groupB");
@@ -448,16 +425,16 @@
Project.NameKey parentNameKey = new Project.NameKey(parent);
ProjectConfig cfg = projectCache.checkedGet(parentNameKey).getConfig();
String gId = "fake-gId";
- cfg.getPluginConfig(PLUGIN_NAME).setGroupReference(
- ProjectCreationValidator.DELEGATE_PROJECT_CREATION_TO,
- new GroupReference(AccountGroup.UUID.parse(gId), delegatingGroup));
+ cfg.getPluginConfig(PLUGIN_NAME)
+ .setGroupReference(
+ ProjectCreationValidator.DELEGATE_PROJECT_CREATION_TO,
+ new GroupReference(AccountGroup.UUID.parse(gId), delegatingGroup));
saveProjectConfig(parentNameKey, cfg);
userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in).assertConflict();
}
@Test
- public void shouldNotBlockCreationIfDelegatingGroupIsRenamed()
- throws Exception {
+ public void shouldNotBlockCreationIfDelegatingGroupIsRenamed() throws Exception {
String ownerGroup = name("groupA");
gApi.groups().create(ownerGroup);
@@ -469,11 +446,9 @@
in = new ProjectInput();
in.parent = parent;
- RestResponse r = userRestSession
- .put("/projects/" + Url.encode(parent + "/childProject"), in);
+ RestResponse r = userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in);
r.assertConflict();
- assertThat(r.getEntityContent())
- .contains("You must be owner of the parent project");
+ assertThat(r.getEntityContent()).contains("You must be owner of the parent project");
// the user is in the delegating group
String delegatingGroup = name("groupB");
@@ -484,15 +459,15 @@
ProjectConfig cfg = projectCache.checkedGet(parentNameKey).getConfig();
String gId = gApi.groups().id(delegatingGroup).get().id;
- cfg.getPluginConfig("project-group-structure").setGroupReference(
- ProjectCreationValidator.DELEGATE_PROJECT_CREATION_TO,
- new GroupReference(AccountGroup.UUID.parse(gId), delegatingGroup));
+ cfg.getPluginConfig("project-group-structure")
+ .setGroupReference(
+ ProjectCreationValidator.DELEGATE_PROJECT_CREATION_TO,
+ new GroupReference(AccountGroup.UUID.parse(gId), delegatingGroup));
saveProjectConfig(parentNameKey, cfg);
String newDelegatingGroup = name("groupC");
gApi.groups().id(delegatingGroup).name(newDelegatingGroup);
- userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in)
- .assertCreated();
+ userRestSession.put("/projects/" + Url.encode(parent + "/childProject"), in).assertCreated();
}
}