AbstractQueryChangesTest#reviewerin: Expand to cover CC
Test the behavior of the reviewerin: query when a user is added to a change as CC. On NoteDb, reviewer and CC are separate so the query result should not include users that were added as CC. However under ReviewDb there is no distinction between reviewer and CC so the results should include users that were added as CC. Change-Id: I9f1d53d9ae6aef1e2c10da586951fb7d76978151
This commit is contained in:
@@ -1715,11 +1715,12 @@ public abstract class AbstractQueryChangesTest extends GerritServerTests {
|
||||
public void reviewerin() throws Exception {
|
||||
Account.Id user1 = accountManager.authenticate(AuthRequest.forUser("user1")).getAccountId();
|
||||
Account.Id user2 = accountManager.authenticate(AuthRequest.forUser("user2")).getAccountId();
|
||||
Account.Id user3 = accountManager.authenticate(AuthRequest.forUser("user3")).getAccountId();
|
||||
TestRepository<Repo> repo = createProject("repo");
|
||||
|
||||
Change change1 = insert(repo, newChange(repo));
|
||||
Change change2 = insert(repo, newChange(repo));
|
||||
insert(repo, newChange(repo));
|
||||
Change change3 = insert(repo, newChange(repo));
|
||||
|
||||
AddReviewerInput rin = new AddReviewerInput();
|
||||
rin.reviewer = user1.toString();
|
||||
@@ -1731,8 +1732,13 @@ public abstract class AbstractQueryChangesTest extends GerritServerTests {
|
||||
rin.state = ReviewerState.REVIEWER;
|
||||
gApi.changes().id(change2.getId().get()).addReviewer(rin);
|
||||
|
||||
rin = new AddReviewerInput();
|
||||
rin.reviewer = user3.toString();
|
||||
rin.state = ReviewerState.CC;
|
||||
gApi.changes().id(change3.getId().get()).addReviewer(rin);
|
||||
|
||||
String group = gApi.groups().create("foo").get().name;
|
||||
gApi.groups().id(group).addMembers(user2.toString());
|
||||
gApi.groups().id(group).addMembers(user2.toString(), user3.toString());
|
||||
|
||||
List<String> members =
|
||||
gApi.groups()
|
||||
@@ -1743,15 +1749,30 @@ public abstract class AbstractQueryChangesTest extends GerritServerTests {
|
||||
.collect(toList());
|
||||
assertThat(members).contains(user2.toString());
|
||||
|
||||
assertQuery("reviewerin:\"Registered Users\"", change2, change1);
|
||||
assertQuery("reviewerin:" + group, change2);
|
||||
if (notesMigration.readChanges()) {
|
||||
// CC and REVIEWER are separate in NoteDB
|
||||
assertQuery("reviewerin:\"Registered Users\"", change2, change1);
|
||||
assertQuery("reviewerin:" + group, change2);
|
||||
} else {
|
||||
// CC and REVIEWER are the same in ReviewDb
|
||||
assertQuery("reviewerin:\"Registered Users\"", change3, change2, change1);
|
||||
assertQuery("reviewerin:" + group, change3, change2);
|
||||
}
|
||||
|
||||
gApi.changes().id(change2.getId().get()).current().review(ReviewInput.approve());
|
||||
gApi.changes().id(change2.getId().get()).current().submit();
|
||||
|
||||
assertQuery("reviewerin:" + group);
|
||||
assertQuery("project:repo reviewerin:" + group, change2);
|
||||
assertQuery("status:merged reviewerin:" + group, change2);
|
||||
if (notesMigration.readChanges()) {
|
||||
// CC and REVIEWER are separate in NoteDB
|
||||
assertQuery("reviewerin:" + group);
|
||||
assertQuery("project:repo reviewerin:" + group, change2);
|
||||
assertQuery("status:merged reviewerin:" + group, change2);
|
||||
} else {
|
||||
// CC and REVIEWER are the same in ReviewDb
|
||||
assertQuery("reviewerin:" + group, change3);
|
||||
assertQuery("project:repo reviewerin:" + group, change2, change3);
|
||||
assertQuery("status:merged reviewerin:" + group, change2);
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user