Fix unit test "addGroupAsReviewersWhenANotPerfectMatchedUserExist"

Previously when merging stable-2.14 into stable-2.15 (Ica09a8894), the
fix from change (I2abfc5908) did not work. However, all unit tests
passed and CI voted +1 for the merge commit. The problem was that this
unit test (ChangeIT.addGroupAsReviewersWhenANotPerfectMatchedUserExists)
was not setting up the environment properly so when running all the
unit tests, this one get passed with the interference from other tests.

This change fix the setup of the environment so that it does not get
affected by other unit tests.

Change-Id: I0db7970b27fc65a39d551340c591c999ac74f874
This commit is contained in:
Borui Tao 2018-03-08 09:59:17 -05:00 committed by David Pursehouse
parent d12c6b4a72
commit e0072fdd7a
1 changed files with 11 additions and 10 deletions

View File

@ -1069,16 +1069,17 @@ public class ChangeIT extends AbstractDaemonTest {
String oldETag = rsrc.getETag();
Timestamp oldTs = rsrc.getChange().getLastUpdatedOn();
//create a group named "us" with one user: testUser
TestAccount testUser = accounts.create("testUser", "testUser@test.com", "testUser");
String testGroup =
createGroupWithRealName(user.fullName.substring(0, user.fullName.length() / 2));
//create a group named "kobe" with one user: lee
TestAccount testUser = accounts.create("kobebryant", "kobebryant@test.com", "kobebryant");
TestAccount myGroupUser = accounts.create("lee", "lee@test.com", "lee");
String testGroup = createGroupWithRealName("kobe");
GroupApi groupApi = gApi.groups().id(testGroup);
groupApi.description("test group");
groupApi.addMembers(testUser.fullName);
groupApi.addMembers(myGroupUser.fullName);
//ensure that user "user" is not in the group
groupApi.removeMembers(user.fullName);
groupApi.removeMembers(testUser.fullName);
AddReviewerInput in = new AddReviewerInput();
in.reviewer = testGroup;
@ -1087,11 +1088,11 @@ public class ChangeIT extends AbstractDaemonTest {
List<Message> messages = sender.getMessages();
assertThat(messages).hasSize(1);
Message m = messages.get(0);
assertThat(m.rcpt()).containsExactly(testUser.emailAddress);
assertThat(m.body()).contains("Hello " + testUser.fullName + ",\n");
assertThat(m.rcpt()).containsExactly(myGroupUser.emailAddress);
assertThat(m.body()).contains("Hello " + myGroupUser.fullName + ",\n");
assertThat(m.body()).contains("I'd like you to do a code review.");
assertThat(m.body()).contains("Change subject: " + PushOneCommit.SUBJECT + "\n");
assertMailReplyTo(m, testUser.email);
assertMailReplyTo(m, myGroupUser.email);
ChangeInfo c = gApi.changes().id(r.getChangeId()).get();
// When NoteDb is enabled adding a reviewer records that user as reviewer
@ -1101,7 +1102,7 @@ public class ChangeIT extends AbstractDaemonTest {
Collection<AccountInfo> reviewers = c.reviewers.get(REVIEWER);
assertThat(reviewers).isNotNull();
assertThat(reviewers).hasSize(1);
assertThat(reviewers.iterator().next()._accountId).isEqualTo(testUser.getId().get());
assertThat(reviewers.iterator().next()._accountId).isEqualTo(myGroupUser.getId().get());
// Ensure ETag and lastUpdatedOn are updated.
rsrc = parseResource(r);