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:

committed by
David Pursehouse

parent
b3f2cf27b9
commit
03c2db91b3
@@ -30,6 +30,7 @@ import com.google.gerrit.acceptance.RestResponse;
|
|||||||
import com.google.gerrit.common.data.AccessSection;
|
import com.google.gerrit.common.data.AccessSection;
|
||||||
import com.google.gerrit.common.data.GlobalCapability;
|
import com.google.gerrit.common.data.GlobalCapability;
|
||||||
import com.google.gerrit.common.data.Permission;
|
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.common.data.PermissionRule;
|
||||||
import com.google.gerrit.server.git.MetaDataUpdate;
|
import com.google.gerrit.server.git.MetaDataUpdate;
|
||||||
import com.google.gerrit.server.git.ProjectConfig;
|
import com.google.gerrit.server.git.ProjectConfig;
|
||||||
@@ -60,7 +61,7 @@ public class CapabilitiesIT extends AbstractDaemonTest {
|
|||||||
assertFalse(info.priority);
|
assertFalse(info.priority);
|
||||||
} else if (QUERY_LIMIT.equals(c)) {
|
} else if (QUERY_LIMIT.equals(c)) {
|
||||||
assertEquals(0, info.queryLimit.min);
|
assertEquals(0, info.queryLimit.min);
|
||||||
assertEquals(0, info.queryLimit.max);
|
assertEquals(DEFAULT_MAX_QUERY_LIMIT, info.queryLimit.max);
|
||||||
} else {
|
} else {
|
||||||
assertTrue(String.format("capability %s was not granted", c),
|
assertTrue(String.format("capability %s was not granted", c),
|
||||||
(Boolean) CapabilityInfo.class.getField(c).get(info));
|
(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,
|
private void grantAllCapabilities() throws IOException,
|
||||||
ConfigInvalidException {
|
ConfigInvalidException {
|
||||||
MetaDataUpdate md = metaDataUpdateFactory.create(allProjects);
|
MetaDataUpdate md = metaDataUpdateFactory.create(allProjects);
|
||||||
@@ -102,13 +107,20 @@ public class CapabilitiesIT extends AbstractDaemonTest {
|
|||||||
AccessSection s = config.getAccessSection(
|
AccessSection s = config.getAccessSection(
|
||||||
AccessSection.GLOBAL_CAPABILITIES);
|
AccessSection.GLOBAL_CAPABILITIES);
|
||||||
for (String c : GlobalCapability.getAllNames()) {
|
for (String c : GlobalCapability.getAllNames()) {
|
||||||
if (ADMINISTRATE_SERVER.equals(c)) {
|
if (ADMINISTRATE_SERVER.equals(c) || PRIORITY.equals(c)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
Permission p = s.getPermission(c, true);
|
Permission p = s.getPermission(c, true);
|
||||||
p.add(new PermissionRule(
|
PermissionRule rule = new PermissionRule(
|
||||||
config.resolve(SystemGroupBackend.getGroup(
|
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);
|
config.commit(md);
|
||||||
projectCache.evict(config.getProject());
|
projectCache.evict(config.getProject());
|
||||||
|
Reference in New Issue
Block a user