Support querying groups by name and name part
This adds two query operators for group queries: 1. name: Exact match on the group name (case-insensitive) 2. inname: Prefix match on a group name part (case-insensitive) Change-Id: Iedec2574690881470ba7f0ff7cd12263e466352f Signed-off-by: Edwin Kempin <ekempin@google.com>
This commit is contained in:
@@ -60,6 +60,7 @@ import org.junit.rules.TestName;
|
||||
import java.util.Arrays;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
|
||||
@Ignore
|
||||
public abstract class AbstractQueryGroupsTest extends GerritServerTests {
|
||||
@@ -184,6 +185,33 @@ public abstract class AbstractQueryGroupsTest extends GerritServerTests {
|
||||
assertQuery("uuid:" + group.id, group);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void byName() throws Exception {
|
||||
assertQuery("name:non-existing");
|
||||
|
||||
GroupInfo group = createGroup(name("group"));
|
||||
assertQuery("name:" + group.name, group);
|
||||
assertQuery("name:" + group.name.toUpperCase(Locale.US), group);
|
||||
|
||||
// only exact match
|
||||
GroupInfo groupWithHyphen = createGroup(name("group-with-hyphen"));
|
||||
createGroup(name("group-no-match-with-hyphen"));
|
||||
assertQuery("name:" + groupWithHyphen.name, groupWithHyphen);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void byInname() throws Exception {
|
||||
String namePart = testName.getMethodName();
|
||||
GroupInfo group1 = createGroup("group-" + namePart);
|
||||
GroupInfo group2 = createGroup("group-" + namePart + "-2");
|
||||
GroupInfo group3 = createGroup("group-" + namePart + "3");
|
||||
assertQuery("inname:" + namePart, group1, group2, group3);
|
||||
assertQuery("inname:" + namePart.toUpperCase(Locale.US), group1, group2,
|
||||
group3);
|
||||
assertQuery("inname:" + namePart.toLowerCase(Locale.US), group1, group2,
|
||||
group3);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void withLimit() throws Exception {
|
||||
GroupInfo group1 = createGroup(name("group1"));
|
||||
|
||||
Reference in New Issue
Block a user