Fix granting of capabilities in capabilities acceptance test

Do not grant ADMINISTRATE_SERVER and PRIORITY for User.

Set the default ranges for range permissions.

Change-Id: I5e653bfc288d62a0f342b06af28eabeaa45c9b43
This commit is contained in:
Bruce Zu
2014-11-21 14:51:24 +08:00
committed by David Pursehouse
parent b3f2cf27b9
commit 03c2db91b3

View File

@@ -30,6 +30,7 @@ import com.google.gerrit.acceptance.RestResponse;
import com.google.gerrit.common.data.AccessSection;
import com.google.gerrit.common.data.GlobalCapability;
import com.google.gerrit.common.data.Permission;
import com.google.gerrit.common.data.PermissionRange;
import com.google.gerrit.common.data.PermissionRule;
import com.google.gerrit.server.git.MetaDataUpdate;
import com.google.gerrit.server.git.ProjectConfig;
@@ -60,7 +61,7 @@ public class CapabilitiesIT extends AbstractDaemonTest {
assertFalse(info.priority);
} else if (QUERY_LIMIT.equals(c)) {
assertEquals(0, info.queryLimit.min);
assertEquals(0, info.queryLimit.max);
assertEquals(DEFAULT_MAX_QUERY_LIMIT, info.queryLimit.max);
} else {
assertTrue(String.format("capability %s was not granted", c),
(Boolean) CapabilityInfo.class.getField(c).get(info));
@@ -94,6 +95,10 @@ public class CapabilitiesIT extends AbstractDaemonTest {
}
}
/**
* Grant all global capabilities except ADMINISTRATE_SERVER and PRIORITY.
* Set the default ranges for range permissions.
*/
private void grantAllCapabilities() throws IOException,
ConfigInvalidException {
MetaDataUpdate md = metaDataUpdateFactory.create(allProjects);
@@ -102,13 +107,20 @@ public class CapabilitiesIT extends AbstractDaemonTest {
AccessSection s = config.getAccessSection(
AccessSection.GLOBAL_CAPABILITIES);
for (String c : GlobalCapability.getAllNames()) {
if (ADMINISTRATE_SERVER.equals(c)) {
if (ADMINISTRATE_SERVER.equals(c) || PRIORITY.equals(c)) {
continue;
}
Permission p = s.getPermission(c, true);
p.add(new PermissionRule(
PermissionRule rule = new PermissionRule(
config.resolve(SystemGroupBackend.getGroup(
SystemGroupBackend.REGISTERED_USERS))));
SystemGroupBackend.REGISTERED_USERS)));
if (GlobalCapability.hasRange(c)) {
PermissionRange.WithDefaults range = GlobalCapability.getRange(c);
if (range != null) {
rule.setRange(range.getDefaultMin(), range.getDefaultMax());
}
}
p.add(rule);
}
config.commit(md);
projectCache.evict(config.getProject());