Merge branch 'stable-2.14'
* stable-2.14: Preserve line-endings in inline editing ChangeOwnerIT: Move method to grant permissions on label to base class Change-Id: Ib3a39f2837bb584eb327c303c6ee2c07077a4e86
This commit is contained in:
@@ -881,6 +881,30 @@ public abstract class AbstractDaemonTest {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void grantLabel(
|
||||||
|
String permission,
|
||||||
|
int min,
|
||||||
|
int max,
|
||||||
|
Project.NameKey project,
|
||||||
|
String ref,
|
||||||
|
boolean force,
|
||||||
|
AccountGroup.UUID groupUUID)
|
||||||
|
throws RepositoryNotFoundException, IOException, ConfigInvalidException {
|
||||||
|
try (MetaDataUpdate md = metaDataUpdateFactory.create(project)) {
|
||||||
|
md.setMessage(String.format("Grant %s on %s", permission, ref));
|
||||||
|
ProjectConfig config = ProjectConfig.read(md);
|
||||||
|
AccessSection s = config.getAccessSection(ref, true);
|
||||||
|
Permission p = s.getPermission(permission, true);
|
||||||
|
PermissionRule rule = Util.newRule(config, groupUUID);
|
||||||
|
rule.setForce(force);
|
||||||
|
rule.setMin(min);
|
||||||
|
rule.setMax(max);
|
||||||
|
p.add(rule);
|
||||||
|
config.commit(md);
|
||||||
|
projectCache.evict(config.getProject());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void removePermission(Project.NameKey project, String ref, String permission)
|
protected void removePermission(Project.NameKey project, String ref, String permission)
|
||||||
throws IOException, ConfigInvalidException {
|
throws IOException, ConfigInvalidException {
|
||||||
try (MetaDataUpdate md = metaDataUpdateFactory.create(project)) {
|
try (MetaDataUpdate md = metaDataUpdateFactory.create(project)) {
|
||||||
|
|||||||
@@ -14,20 +14,14 @@
|
|||||||
|
|
||||||
package com.google.gerrit.acceptance.rest.change;
|
package com.google.gerrit.acceptance.rest.change;
|
||||||
|
|
||||||
import static com.google.gerrit.common.data.Permission.LABEL;
|
|
||||||
|
|
||||||
import com.google.gerrit.acceptance.AbstractDaemonTest;
|
import com.google.gerrit.acceptance.AbstractDaemonTest;
|
||||||
import com.google.gerrit.acceptance.AcceptanceTestRequestScope.Context;
|
import com.google.gerrit.acceptance.AcceptanceTestRequestScope.Context;
|
||||||
import com.google.gerrit.acceptance.PushOneCommit;
|
import com.google.gerrit.acceptance.PushOneCommit;
|
||||||
import com.google.gerrit.acceptance.TestAccount;
|
import com.google.gerrit.acceptance.TestAccount;
|
||||||
import com.google.gerrit.acceptance.TestProjectInput;
|
import com.google.gerrit.acceptance.TestProjectInput;
|
||||||
import com.google.gerrit.common.data.AccessSection;
|
|
||||||
import com.google.gerrit.common.data.Permission;
|
import com.google.gerrit.common.data.Permission;
|
||||||
import com.google.gerrit.common.data.PermissionRule;
|
|
||||||
import com.google.gerrit.extensions.api.changes.ReviewInput;
|
import com.google.gerrit.extensions.api.changes.ReviewInput;
|
||||||
import com.google.gerrit.extensions.restapi.AuthException;
|
import com.google.gerrit.extensions.restapi.AuthException;
|
||||||
import com.google.gerrit.server.git.MetaDataUpdate;
|
|
||||||
import com.google.gerrit.server.git.ProjectConfig;
|
|
||||||
import com.google.gerrit.server.group.SystemGroupBackend;
|
import com.google.gerrit.server.group.SystemGroupBackend;
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
@@ -77,20 +71,14 @@ public class ChangeOwnerIT extends AbstractDaemonTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void grantApproveToChangeOwner() throws Exception {
|
private void grantApproveToChangeOwner() throws Exception {
|
||||||
try (MetaDataUpdate md = metaDataUpdateFactory.create(project)) {
|
grantLabel(
|
||||||
md.setMessage(String.format("Grant approve to change owner"));
|
Permission.LABEL + "Code-Review",
|
||||||
ProjectConfig config = ProjectConfig.read(md);
|
-2,
|
||||||
AccessSection s = config.getAccessSection("refs/heads/*", true);
|
2,
|
||||||
Permission p = s.getPermission(LABEL + "Code-Review", true);
|
project,
|
||||||
PermissionRule rule =
|
"refs/heads/*",
|
||||||
new PermissionRule(
|
false,
|
||||||
config.resolve(systemGroupBackend.getGroup(SystemGroupBackend.CHANGE_OWNER)));
|
SystemGroupBackend.CHANGE_OWNER);
|
||||||
rule.setMin(-2);
|
|
||||||
rule.setMax(+2);
|
|
||||||
p.add(rule);
|
|
||||||
config.commit(md);
|
|
||||||
projectCache.evict(config.getProject());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private String createMyChange() throws Exception {
|
private String createMyChange() throws Exception {
|
||||||
|
|||||||
Reference in New Issue
Block a user