Inline AbstractDaemonTest#getRemoteHead

The ProjectOperations API is designed to be readable. It's slightly more
verbose, but looking at the actual call sites, we can live with it.

Change-Id: Iccd122f261f3667d481e70e180215e634d5dfa2a
This commit is contained in:
Dave Borowitz
2019-05-13 11:38:42 +02:00
parent e15c1a6a39
commit edb599b65e
29 changed files with 197 additions and 193 deletions

View File

@@ -959,15 +959,6 @@ public abstract class AbstractDaemonTest {
} }
} }
// TODO(hanwen): push this down.
protected RevCommit getRemoteHead(Project.NameKey project, String branch) throws Exception {
return projectOperations.project(project).getHead(branch);
}
protected RevCommit getRemoteHead() throws Exception {
return getRemoteHead(project, "master");
}
protected void assertMailReplyTo(Message message, String email) throws Exception { protected void assertMailReplyTo(Message message, String email) throws Exception {
assertThat(message.headers()).containsKey("Reply-To"); assertThat(message.headers()).containsKey("Reply-To");
EmailHeader.String replyTo = (EmailHeader.String) message.headers().get("Reply-To"); EmailHeader.String replyTo = (EmailHeader.String) message.headers().get("Reply-To");

View File

@@ -422,8 +422,10 @@ public class AccountIT extends AbstractDaemonTest {
List<EmailInfo> emails = gApi.accounts().id(accountId.get()).getEmails(); List<EmailInfo> emails = gApi.accounts().id(accountId.get()).getEmails();
assertThat(emails.stream().map(e -> e.email).collect(toSet())).containsExactly(extId.email()); assertThat(emails.stream().map(e -> e.email).collect(toSet())).containsExactly(extId.email());
RevCommit commitUserBranch = getRemoteHead(allUsers, RefNames.refsUsers(accountId)); RevCommit commitUserBranch =
RevCommit commitRefsMetaExternalIds = getRemoteHead(allUsers, RefNames.REFS_EXTERNAL_IDS); projectOperations.project(allUsers).getHead(RefNames.refsUsers(accountId));
RevCommit commitRefsMetaExternalIds =
projectOperations.project(allUsers).getHead(RefNames.REFS_EXTERNAL_IDS);
assertThat(commitUserBranch.getCommitTime()) assertThat(commitUserBranch.getCommitTime())
.isEqualTo(commitRefsMetaExternalIds.getCommitTime()); .isEqualTo(commitRefsMetaExternalIds.getCommitTime());
} finally { } finally {

View File

@@ -3182,7 +3182,7 @@ public class ChangeIT extends AbstractDaemonTest {
@Test @Test
public void createMergePatchSetCannotBaseOnInvisibleChange() throws Exception { public void createMergePatchSetCannotBaseOnInvisibleChange() throws Exception {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
createBranch("foo"); createBranch("foo");
createBranch("bar"); createBranch("bar");
@@ -3211,7 +3211,7 @@ public class ChangeIT extends AbstractDaemonTest {
@Test @Test
public void createMergePatchSetBaseOnChange() throws Exception { public void createMergePatchSetBaseOnChange() throws Exception {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
createBranch("foo"); createBranch("foo");
createBranch("bar"); createBranch("bar");
@@ -3379,7 +3379,7 @@ public class ChangeIT extends AbstractDaemonTest {
@Test @Test
public void checkLabelsForMergedChangeWithNonAuthorCodeReview() throws Exception { public void checkLabelsForMergedChangeWithNonAuthorCodeReview() throws Exception {
// Configure Non-Author-Code-Review // Configure Non-Author-Code-Review
RevCommit oldHead = getRemoteHead(); RevCommit oldHead = projectOperations.project(project).getHead("master");
GitUtil.fetch(testRepo, RefNames.REFS_CONFIG + ":config"); GitUtil.fetch(testRepo, RefNames.REFS_CONFIG + ":config");
testRepo.reset("config"); testRepo.reset("config");
PushOneCommit push2 = PushOneCommit push2 =
@@ -3574,7 +3574,7 @@ public class ChangeIT extends AbstractDaemonTest {
+ "U > 0," + "U > 0,"
+ "R = label('All-Comments-Resolved', need(_)). \n\n"); + "R = label('All-Comments-Resolved', need(_)). \n\n");
String oldHead = getRemoteHead().name(); String oldHead = projectOperations.project(project).getHead("master").name();
PushOneCommit.Result result1 = PushOneCommit.Result result1 =
pushFactory.create(user.newIdent(), testRepo).to("refs/for/master"); pushFactory.create(user.newIdent(), testRepo).to("refs/for/master");
testRepo.reset(oldHead); testRepo.reset(oldHead);
@@ -3830,7 +3830,8 @@ public class ChangeIT extends AbstractDaemonTest {
assertThat( assertThat(
gApi.changes() gApi.changes()
.id(revertId) .id(revertId)
.pureRevert(getRemoteHead().toObjectId().name()) .pureRevert(
projectOperations.project(project).getHead("master").toObjectId().name())
.isPureRevert) .isPureRevert)
.isTrue(); .isTrue();
} }
@@ -3853,7 +3854,7 @@ public class ChangeIT extends AbstractDaemonTest {
public void pureRevertParameterTakesPrecedence() throws Exception { public void pureRevertParameterTakesPrecedence() throws Exception {
PushOneCommit.Result r1 = createChange("commit message", "a.txt", "content1"); PushOneCommit.Result r1 = createChange("commit message", "a.txt", "content1");
merge(r1); merge(r1);
String oldHead = getRemoteHead().toObjectId().name(); String oldHead = projectOperations.project(project).getHead("master").toObjectId().name();
PushOneCommit.Result r2 = createChange("commit message", "a.txt", "content2"); PushOneCommit.Result r2 = createChange("commit message", "a.txt", "content2");
merge(r2); merge(r2);
@@ -3896,7 +3897,8 @@ public class ChangeIT extends AbstractDaemonTest {
// Create an initial commit to serve as claimed original // Create an initial commit to serve as claimed original
PushOneCommit.Result r1 = createChange("commit message", "a.txt", "content1"); PushOneCommit.Result r1 = createChange("commit message", "a.txt", "content1");
merge(r1); merge(r1);
String claimedOriginal = getRemoteHead().toObjectId().name(); String claimedOriginal =
projectOperations.project(project).getHead("master").toObjectId().name();
// Change contents of the file to provoke a conflict // Change contents of the file to provoke a conflict
merge(createChange("commit message", "a.txt", "content2")); merge(createChange("commit message", "a.txt", "content2"));

View File

@@ -63,7 +63,7 @@ public class DisablePrivateChangesIT extends AbstractDaemonTest {
@GerritConfig(name = "change.allowDrafts", value = "true") @GerritConfig(name = "change.allowDrafts", value = "true")
@GerritConfig(name = "change.disablePrivateChanges", value = "true") @GerritConfig(name = "change.disablePrivateChanges", value = "true")
public void pushDraftsWithDisablePrivateChangesTrue() throws Exception { public void pushDraftsWithDisablePrivateChangesTrue() throws Exception {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result result = PushOneCommit.Result result =
pushFactory.create(admin.newIdent(), testRepo).to("refs/for/master%draft"); pushFactory.create(admin.newIdent(), testRepo).to("refs/for/master%draft");
result.assertErrorStatus(); result.assertErrorStatus();
@@ -93,7 +93,7 @@ public class DisablePrivateChangesIT extends AbstractDaemonTest {
@Test @Test
@GerritConfig(name = "change.allowDrafts", value = "true") @GerritConfig(name = "change.allowDrafts", value = "true")
public void pushDraftsWithDisablePrivateChangesFalse() throws Exception { public void pushDraftsWithDisablePrivateChangesFalse() throws Exception {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result result = PushOneCommit.Result result =
pushFactory.create(admin.newIdent(), testRepo).to("refs/for/master%draft"); pushFactory.create(admin.newIdent(), testRepo).to("refs/for/master%draft");
assertThat(result.getChange().change().isPrivate()).isTrue(); assertThat(result.getChange().change().isPrivate()).isTrue();

View File

@@ -120,7 +120,7 @@ public class StickyApprovalsIT extends AbstractDaemonTest {
for (ChangeKind changeKind : for (ChangeKind changeKind :
EnumSet.of(REWORK, TRIVIAL_REBASE, NO_CODE_CHANGE, MERGE_FIRST_PARENT_UPDATE, NO_CHANGE)) { EnumSet.of(REWORK, TRIVIAL_REBASE, NO_CODE_CHANGE, MERGE_FIRST_PARENT_UPDATE, NO_CHANGE)) {
testRepo.reset(getRemoteHead()); testRepo.reset(projectOperations.project(project).getHead("master"));
String changeId = createChange(changeKind); String changeId = createChange(changeKind);
vote(admin, changeId, -1, 1); vote(admin, changeId, -1, 1);
@@ -142,7 +142,7 @@ public class StickyApprovalsIT extends AbstractDaemonTest {
for (ChangeKind changeKind : for (ChangeKind changeKind :
EnumSet.of(REWORK, TRIVIAL_REBASE, NO_CODE_CHANGE, MERGE_FIRST_PARENT_UPDATE, NO_CHANGE)) { EnumSet.of(REWORK, TRIVIAL_REBASE, NO_CODE_CHANGE, MERGE_FIRST_PARENT_UPDATE, NO_CHANGE)) {
testRepo.reset(getRemoteHead()); testRepo.reset(projectOperations.project(project).getHead("master"));
String changeId = createChange(changeKind); String changeId = createChange(changeKind);
vote(admin, changeId, 2, 1); vote(admin, changeId, 2, 1);
@@ -179,7 +179,7 @@ public class StickyApprovalsIT extends AbstractDaemonTest {
assertNotSticky(EnumSet.of(REWORK, NO_CODE_CHANGE, MERGE_FIRST_PARENT_UPDATE)); assertNotSticky(EnumSet.of(REWORK, NO_CODE_CHANGE, MERGE_FIRST_PARENT_UPDATE));
// check that votes are sticky when trivial rebase is done by cherry-pick // check that votes are sticky when trivial rebase is done by cherry-pick
testRepo.reset(getRemoteHead()); testRepo.reset(projectOperations.project(project).getHead("master"));
changeId = createChange().getChangeId(); changeId = createChange().getChangeId();
vote(admin, changeId, 2, 1); vote(admin, changeId, 2, 1);
vote(user, changeId, -2, -1); vote(user, changeId, -2, -1);
@@ -190,7 +190,7 @@ public class StickyApprovalsIT extends AbstractDaemonTest {
assertVotes(c, user, -2, 0); assertVotes(c, user, -2, 0);
// check that votes are not sticky when rework is done by cherry-pick // check that votes are not sticky when rework is done by cherry-pick
testRepo.reset(getRemoteHead()); testRepo.reset(projectOperations.project(project).getHead("master"));
changeId = createChange().getChangeId(); changeId = createChange().getChangeId();
vote(admin, changeId, 2, 1); vote(admin, changeId, 2, 1);
vote(user, changeId, -2, -1); vote(user, changeId, -2, -1);
@@ -262,7 +262,7 @@ public class StickyApprovalsIT extends AbstractDaemonTest {
for (ChangeKind changeKind : for (ChangeKind changeKind :
EnumSet.of(REWORK, TRIVIAL_REBASE, NO_CODE_CHANGE, MERGE_FIRST_PARENT_UPDATE, NO_CHANGE)) { EnumSet.of(REWORK, TRIVIAL_REBASE, NO_CODE_CHANGE, MERGE_FIRST_PARENT_UPDATE, NO_CHANGE)) {
testRepo.reset(getRemoteHead()); testRepo.reset(projectOperations.project(project).getHead("master"));
String changeId = createChange(changeKind); String changeId = createChange(changeKind);
vote(admin, changeId, 2, 1); vote(admin, changeId, 2, 1);
@@ -370,7 +370,7 @@ public class StickyApprovalsIT extends AbstractDaemonTest {
private void assertNotSticky(Set<ChangeKind> changeKinds) throws Exception { private void assertNotSticky(Set<ChangeKind> changeKinds) throws Exception {
for (ChangeKind changeKind : changeKinds) { for (ChangeKind changeKind : changeKinds) {
testRepo.reset(getRemoteHead()); testRepo.reset(projectOperations.project(project).getHead("master"));
String changeId = createChange(changeKind); String changeId = createChange(changeKind);
vote(admin, changeId, +2, 1); vote(admin, changeId, +2, 1);
@@ -461,7 +461,7 @@ public class StickyApprovalsIT extends AbstractDaemonTest {
private void trivialRebase(String changeId) throws Exception { private void trivialRebase(String changeId) throws Exception {
requestScopeOperations.setApiUser(admin.id()); requestScopeOperations.setApiUser(admin.id());
testRepo.reset(getRemoteHead()); testRepo.reset(projectOperations.project(project).getHead("master"));
PushOneCommit push = PushOneCommit push =
pushFactory.create( pushFactory.create(
admin.newIdent(), admin.newIdent(),
@@ -527,7 +527,7 @@ public class StickyApprovalsIT extends AbstractDaemonTest {
assert_().fail("unexpected change kind: " + changeKind); assert_().fail("unexpected change kind: " + changeKind);
} }
testRepo.reset(getRemoteHead()); testRepo.reset(projectOperations.project(project).getHead("master"));
PushOneCommit.Result r = PushOneCommit.Result r =
pushFactory pushFactory
.create( .create(

View File

@@ -262,14 +262,14 @@ public class ProjectIT extends AbstractDaemonTest {
@Test @Test
public void descriptionChangeCausesRefUpdate() throws Exception { public void descriptionChangeCausesRefUpdate() throws Exception {
RevCommit initialHead = getRemoteHead(project, RefNames.REFS_CONFIG); RevCommit initialHead = projectOperations.project(project).getHead(RefNames.REFS_CONFIG);
assertThat(gApi.projects().name(project.get()).description()).isEmpty(); assertThat(gApi.projects().name(project.get()).description()).isEmpty();
DescriptionInput in = new DescriptionInput(); DescriptionInput in = new DescriptionInput();
in.description = "new project description"; in.description = "new project description";
gApi.projects().name(project.get()).description(in); gApi.projects().name(project.get()).description(in);
assertThat(gApi.projects().name(project.get()).description()).isEqualTo(in.description); assertThat(gApi.projects().name(project.get()).description()).isEqualTo(in.description);
RevCommit updatedHead = getRemoteHead(project, RefNames.REFS_CONFIG); RevCommit updatedHead = projectOperations.project(project).getHead(RefNames.REFS_CONFIG);
eventRecorder.assertRefUpdatedEvents( eventRecorder.assertRefUpdatedEvents(
project.get(), RefNames.REFS_CONFIG, initialHead, updatedHead); project.get(), RefNames.REFS_CONFIG, initialHead, updatedHead);
} }
@@ -288,7 +288,7 @@ public class ProjectIT extends AbstractDaemonTest {
@Test @Test
public void configChangeCausesRefUpdate() throws Exception { public void configChangeCausesRefUpdate() throws Exception {
RevCommit initialHead = getRemoteHead(project, RefNames.REFS_CONFIG); RevCommit initialHead = projectOperations.project(project).getHead(RefNames.REFS_CONFIG);
ConfigInfo info = gApi.projects().name(project.get()).config(); ConfigInfo info = gApi.projects().name(project.get()).config();
assertThat(info.defaultSubmitType.value).isEqualTo(SubmitType.MERGE_IF_NECESSARY); assertThat(info.defaultSubmitType.value).isEqualTo(SubmitType.MERGE_IF_NECESSARY);
@@ -299,7 +299,7 @@ public class ProjectIT extends AbstractDaemonTest {
info = gApi.projects().name(project.get()).config(); info = gApi.projects().name(project.get()).config();
assertThat(info.defaultSubmitType.value).isEqualTo(SubmitType.CHERRY_PICK); assertThat(info.defaultSubmitType.value).isEqualTo(SubmitType.CHERRY_PICK);
RevCommit updatedHead = getRemoteHead(project, RefNames.REFS_CONFIG); RevCommit updatedHead = projectOperations.project(project).getHead(RefNames.REFS_CONFIG);
eventRecorder.assertRefUpdatedEvents( eventRecorder.assertRefUpdatedEvents(
project.get(), RefNames.REFS_CONFIG, initialHead, updatedHead); project.get(), RefNames.REFS_CONFIG, initialHead, updatedHead);
} }
@@ -741,7 +741,7 @@ public class ProjectIT extends AbstractDaemonTest {
@Nullable @Nullable
protected RevCommit getRemoteHead(String project, String branch) throws Exception { protected RevCommit getRemoteHead(String project, String branch) throws Exception {
return getRemoteHead(Project.nameKey(project), branch); return projectOperations.project(Project.nameKey(project)).getHead(branch);
} }
boolean hasHead(Project.NameKey k, String b) { boolean hasHead(Project.NameKey k, String b) {

View File

@@ -563,7 +563,7 @@ public class RevisionIT extends AbstractDaemonTest {
ByteArrayOutputStream os = new ByteArrayOutputStream(); ByteArrayOutputStream os = new ByteArrayOutputStream();
bin.writeTo(os); bin.writeTo(os);
String fileContent = new String(os.toByteArray(), UTF_8); String fileContent = new String(os.toByteArray(), UTF_8);
String destSha1 = abbreviateName(getRemoteHead(project, destBranch), 6); String destSha1 = abbreviateName(projectOperations.project(project).getHead(destBranch), 6);
String changeSha1 = abbreviateName(r.getCommit(), 6); String changeSha1 = abbreviateName(r.getCommit(), 6);
assertThat(fileContent) assertThat(fileContent)
.isEqualTo( .isEqualTo(

View File

@@ -204,7 +204,7 @@ public class SubmitOnPushIT extends AbstractDaemonTest {
.add(allow(Permission.CREATE).ref(other).group(adminGroupUuid())) .add(allow(Permission.CREATE).ref(other).group(adminGroupUuid()))
.add(allow(Permission.PUSH).ref(other).group(adminGroupUuid())) .add(allow(Permission.PUSH).ref(other).group(adminGroupUuid()))
.update(); .update();
RevCommit masterRev = getRemoteHead(); RevCommit masterRev = projectOperations.project(project).getHead("master");
pushCommitTo(masterRev, other); pushCommitTo(masterRev, other);
PushOneCommit.Result r = createChange(); PushOneCommit.Result r = createChange();
r.assertOkStatus(); r.assertOkStatus();
@@ -314,7 +314,7 @@ public class SubmitOnPushIT extends AbstractDaemonTest {
.update(); .update();
// Create 2 changes. // Create 2 changes.
ObjectId initialHead = getRemoteHead(); ObjectId initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result r1 = createChange("Change 1", "a", "a"); PushOneCommit.Result r1 = createChange("Change 1", "a", "a");
r1.assertOkStatus(); r1.assertOkStatus();
PushOneCommit.Result r2 = createChange("Change 2", "b", "b"); PushOneCommit.Result r2 = createChange("Change 2", "b", "b");

View File

@@ -401,7 +401,7 @@ public class SubmoduleSubscriptionsWholeTopicMergeIT extends AbstractSubmoduleSu
gApi.changes().id(subChangeId).current().submit(); gApi.changes().id(subChangeId).current().submit();
expectToHaveSubmoduleState(superRepo, "master", subKey, subRepo, "master"); expectToHaveSubmoduleState(superRepo, "master", subKey, subRepo, "master");
RevCommit superHead = getRemoteHead(superKey, "master"); RevCommit superHead = projectOperations.project(superKey).getHead("master");
assertThat(superHead.getShortMessage()).contains("some message"); assertThat(superHead.getShortMessage()).contains("some message");
assertThat(superHead.getId()).isNotEqualTo(superId); assertThat(superHead.getId()).isNotEqualTo(superId);
} }
@@ -435,7 +435,7 @@ public class SubmoduleSubscriptionsWholeTopicMergeIT extends AbstractSubmoduleSu
gApi.changes().id(subChangeId).current().submit(); gApi.changes().id(subChangeId).current().submit();
RevCommit superHead = getRemoteHead(superKey, "master"); RevCommit superHead = projectOperations.project(superKey).getHead("master");
assertThat(superHead.getShortMessage()).isEqualTo("some message"); assertThat(superHead.getShortMessage()).isEqualTo("some message");
assertThat(superHead.getId()).isEqualTo(superId); assertThat(superHead.getId()).isEqualTo(superId);
} }
@@ -751,13 +751,13 @@ public class SubmoduleSubscriptionsWholeTopicMergeIT extends AbstractSubmoduleSu
approve(getChangeId(repoB, bDevHead).get()); approve(getChangeId(repoB, bDevHead).get());
gApi.changes().id(getChangeId(repoA, aDevHead).get()).current().submit(); gApi.changes().id(getChangeId(repoA, aDevHead).get()).current().submit();
assertThat(getRemoteHead(keyA, "refs/heads/master").getShortMessage()) assertThat(projectOperations.project(keyA).getHead("refs/heads/master").getShortMessage())
.contains("some message in a master.txt"); .contains("some message in a master.txt");
assertThat(getRemoteHead(keyA, "refs/heads/dev").getShortMessage()) assertThat(projectOperations.project(keyA).getHead("refs/heads/dev").getShortMessage())
.contains("some message in a dev.txt"); .contains("some message in a dev.txt");
assertThat(getRemoteHead(keyB, "refs/heads/master").getShortMessage()) assertThat(projectOperations.project(keyB).getHead("refs/heads/master").getShortMessage())
.contains("some message in b master.txt"); .contains("some message in b master.txt");
assertThat(getRemoteHead(keyB, "refs/heads/dev").getShortMessage()) assertThat(projectOperations.project(keyB).getHead("refs/heads/dev").getShortMessage())
.contains("some message in b dev.txt"); .contains("some message in b dev.txt");
} }
@@ -850,13 +850,13 @@ public class SubmoduleSubscriptionsWholeTopicMergeIT extends AbstractSubmoduleSu
sub1.git().fetch().call(); sub1.git().fetch().call();
RevWalk rw1 = sub1.getRevWalk(); RevWalk rw1 = sub1.getRevWalk();
RevCommit master1 = rw1.parseCommit(getRemoteHead(subKey1, "master")); RevCommit master1 = rw1.parseCommit(projectOperations.project(subKey1).getHead("master"));
RevCommit change1Ps = parseCurrentRevision(rw1, changeId1); RevCommit change1Ps = parseCurrentRevision(rw1, changeId1);
assertThat(rw1.isMergedInto(change1Ps, master1)).isTrue(); assertThat(rw1.isMergedInto(change1Ps, master1)).isTrue();
sub2.git().fetch().call(); sub2.git().fetch().call();
RevWalk rw2 = sub2.getRevWalk(); RevWalk rw2 = sub2.getRevWalk();
RevCommit master2 = rw2.parseCommit(getRemoteHead(subKey2, "master")); RevCommit master2 = rw2.parseCommit(projectOperations.project(subKey2).getHead("master"));
RevCommit change2Ps = parseCurrentRevision(rw2, changeId2); RevCommit change2Ps = parseCurrentRevision(rw2, changeId2);
assertThat(rw2.isMergedInto(change2Ps, master2)).isTrue(); assertThat(rw2.isMergedInto(change2Ps, master2)).isTrue();

View File

@@ -217,7 +217,7 @@ public class ProjectsRestApiBindingsIT extends AbstractDaemonTest {
testRepo testRepo
.commit() .commit()
.message("A change") .message("A change")
.parent(getRemoteHead()) .parent(projectOperations.project(project).getHead("master"))
.add(filename, "content") .add(filename, "content")
.insertChangeId() .insertChangeId()
.create(); .create();

View File

@@ -164,16 +164,17 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
assertThat(actual).hasSize(1); assertThat(actual).hasSize(1);
submit(change.getChangeId()); submit(change.getChangeId());
assertThat(getRemoteHead().getId()).isEqualTo(change.getCommit()); assertThat(projectOperations.project(project).getHead("master").getId())
.isEqualTo(change.getCommit());
assertTrees(project, actual); assertTrees(project, actual);
} }
@Test @Test
public void submitSingleChange() throws Throwable { public void submitSingleChange() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange(); PushOneCommit.Result change = createChange();
Map<BranchNameKey, ObjectId> actual = fetchFromSubmitPreview(change.getChangeId()); Map<BranchNameKey, ObjectId> actual = fetchFromSubmitPreview(change.getChangeId());
RevCommit headAfterSubmit = getRemoteHead(); RevCommit headAfterSubmit = projectOperations.project(project).getHead("master");
assertThat(headAfterSubmit).isEqualTo(initialHead); assertThat(headAfterSubmit).isEqualTo(initialHead);
assertRefUpdatedEvents(); assertRefUpdatedEvents();
assertChangeMergedEvents(); assertChangeMergedEvents();
@@ -192,12 +193,12 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
@Test @Test
public void submitMultipleChangesOtherMergeConflictPreview() throws Throwable { public void submitMultipleChangesOtherMergeConflictPreview() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange("Change 1", "a.txt", "content"); PushOneCommit.Result change = createChange("Change 1", "a.txt", "content");
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit headAfterFirstSubmit = getRemoteHead(); RevCommit headAfterFirstSubmit = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "other content"); PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "other content");
PushOneCommit.Result change3 = createChange("Change 3", "d", "d"); PushOneCommit.Result change3 = createChange("Change 3", "d", "d");
@@ -267,7 +268,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
break; break;
} }
RevCommit headAfterSubmit = getRemoteHead(); RevCommit headAfterSubmit = projectOperations.project(project).getHead("master");
assertThat(headAfterSubmit).isEqualTo(headAfterFirstSubmit); assertThat(headAfterSubmit).isEqualTo(headAfterFirstSubmit);
assertRefUpdatedEvents(initialHead, headAfterFirstSubmit); assertRefUpdatedEvents(initialHead, headAfterFirstSubmit);
assertChangeMergedEvents(change.getChangeId(), headAfterFirstSubmit.name()); assertChangeMergedEvents(change.getChangeId(), headAfterFirstSubmit.name());
@@ -276,7 +277,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
@Test @Test
public void submitMultipleChangesPreview() throws Throwable { public void submitMultipleChangesPreview() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "other content"); PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "other content");
PushOneCommit.Result change3 = createChange("Change 3", "d", "d"); PushOneCommit.Result change3 = createChange("Change 3", "d", "d");
PushOneCommit.Result change4 = createChange("Change 4", "e", "e"); PushOneCommit.Result change4 = createChange("Change 4", "e", "e");
@@ -301,7 +302,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
} }
// check that the submit preview did not actually submit // check that the submit preview did not actually submit
RevCommit headAfterSubmit = getRemoteHead(); RevCommit headAfterSubmit = projectOperations.project(project).getHead("master");
assertThat(headAfterSubmit).isEqualTo(initialHead); assertThat(headAfterSubmit).isEqualTo(initialHead);
assertRefUpdatedEvents(); assertRefUpdatedEvents();
assertChangeMergedEvents(); assertChangeMergedEvents();
@@ -428,7 +429,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
Project.NameKey keyA = createProjectForPush(getSubmitType()); Project.NameKey keyA = createProjectForPush(getSubmitType());
TestRepository<?> repoA = cloneProject(keyA); TestRepository<?> repoA = cloneProject(keyA);
RevCommit initialHead = getRemoteHead(keyA, "master"); RevCommit initialHead = projectOperations.project(keyA).getHead("master");
// Create the dev branch on the test project // Create the dev branch on the test project
BranchInput in = new BranchInput(); BranchInput in = new BranchInput();
@@ -621,7 +622,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
// | / // | /
// I -- master // I -- master
// //
RevCommit master = getRemoteHead(project, "master"); RevCommit master = projectOperations.project(project).getHead("master");
PushOneCommit stableTip = PushOneCommit stableTip =
pushFactory.create(admin.newIdent(), testRepo, "Tip of branch stable", "stable.txt", ""); pushFactory.create(admin.newIdent(), testRepo, "Tip of branch stable", "stable.txt", "");
PushOneCommit.Result stable = stableTip.to("refs/heads/stable"); PushOneCommit.Result stable = stableTip.to("refs/heads/stable");
@@ -649,7 +650,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
// | / // | /
// I -- master // I -- master
// //
RevCommit initial = getRemoteHead(project, "master"); RevCommit initial = projectOperations.project(project).getHead("master");
// push directly to stable to S1 // push directly to stable to S1
PushOneCommit.Result s1 = PushOneCommit.Result s1 =
pushFactory pushFactory
@@ -686,7 +687,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
// create and submit a change // create and submit a change
PushOneCommit.Result change = createChange(); PushOneCommit.Result change = createChange();
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit headAfterSubmit = getRemoteHead(); RevCommit headAfterSubmit = projectOperations.project(project).getHead("master");
// set the status of the change back to NEW to simulate a failed submit that // set the status of the change back to NEW to simulate a failed submit that
// merged the commit but failed to update the change status // merged the commit but failed to update the change status
@@ -695,7 +696,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
// submitting the change again should detect that the commit was already // submitting the change again should detect that the commit was already
// merged and just fix the change status to be MERGED // merged and just fix the change status to be MERGED
submit(change.getChangeId()); submit(change.getChangeId());
assertThat(getRemoteHead()).isEqualTo(headAfterSubmit); assertThat(projectOperations.project(project).getHead("master")).isEqualTo(headAfterSubmit);
} }
@Test @Test
@@ -709,7 +710,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
} }
submit(change2.getChangeId()); submit(change2.getChangeId());
assertMerged(change1.getChangeId()); assertMerged(change1.getChangeId());
RevCommit headAfterSubmit = getRemoteHead(); RevCommit headAfterSubmit = projectOperations.project(project).getHead("master");
// set the status of the changes back to NEW to simulate a failed submit that // set the status of the changes back to NEW to simulate a failed submit that
// merged the commits but failed to update the change status // merged the commits but failed to update the change status
@@ -719,7 +720,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
// merged and just fix the change status to be MERGED // merged and just fix the change status to be MERGED
submit(change1.getChangeId()); submit(change1.getChangeId());
submit(change2.getChangeId()); submit(change2.getChangeId());
assertThat(getRemoteHead()).isEqualTo(headAfterSubmit); assertThat(projectOperations.project(project).getHead("master")).isEqualTo(headAfterSubmit);
} }
@Test @Test
@@ -733,7 +734,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
approve(change1.getChangeId()); approve(change1.getChangeId());
submit(change2.getChangeId()); submit(change2.getChangeId());
assertMerged(change1.getChangeId()); assertMerged(change1.getChangeId());
RevCommit headAfterSubmit = getRemoteHead(); RevCommit headAfterSubmit = projectOperations.project(project).getHead("master");
// set the status of the second change back to NEW to simulate a failed // set the status of the second change back to NEW to simulate a failed
// submit that merged the commits but failed to update the change status of // submit that merged the commits but failed to update the change status of
@@ -743,7 +744,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
// submitting the topic again should detect that the commits were already // submitting the topic again should detect that the commits were already
// merged and just fix the change status to be MERGED // merged and just fix the change status to be MERGED
submit(change2.getChangeId()); submit(change2.getChangeId());
assertThat(getRemoteHead()).isEqualTo(headAfterSubmit); assertThat(projectOperations.project(project).getHead("master")).isEqualTo(headAfterSubmit);
} }
@Test @Test
@@ -835,7 +836,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
public void submitWithCommitAndItsMergeCommitTogether() throws Throwable { public void submitWithCommitAndItsMergeCommitTogether() throws Throwable {
assume().that(isSubmitWholeTopicEnabled()).isTrue(); assume().that(isSubmitWholeTopicEnabled()).isTrue();
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
// Create a stable branch and bootstrap it. // Create a stable branch and bootstrap it.
gApi.projects().name(project.get()).branch("stable").create(new BranchInput()); gApi.projects().name(project.get()).branch("stable").create(new BranchInput());
@@ -843,8 +844,8 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
pushFactory.create(user.newIdent(), testRepo, "initial commit", "a.txt", "a"); pushFactory.create(user.newIdent(), testRepo, "initial commit", "a.txt", "a");
PushOneCommit.Result change = push.to("refs/heads/stable"); PushOneCommit.Result change = push.to("refs/heads/stable");
RevCommit stable = getRemoteHead(project, "stable"); RevCommit stable = projectOperations.project(project).getHead("stable");
RevCommit master = getRemoteHead(project, "master"); RevCommit master = projectOperations.project(project).getHead("master");
assertThat(master).isEqualTo(initialHead); assertThat(master).isEqualTo(initialHead);
assertThat(stable).isEqualTo(change.getCommit()); assertThat(stable).isEqualTo(change.getCommit());
@@ -897,7 +898,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
assertMerged(mergeId); assertMerged(mergeId);
testRepo.git().fetch().call(); testRepo.git().fetch().call();
RevWalk rw = testRepo.getRevWalk(); RevWalk rw = testRepo.getRevWalk();
master = rw.parseCommit(getRemoteHead(project, "master")); master = rw.parseCommit(projectOperations.project(project).getHead("master"));
assertThat(rw.isMergedInto(merge, master)).isTrue(); assertThat(rw.isMergedInto(merge, master)).isTrue();
assertThat(rw.isMergedInto(fix, master)).isTrue(); assertThat(rw.isMergedInto(fix, master)).isTrue();
} }
@@ -920,7 +921,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
testRepo.git().fetch().call(); testRepo.git().fetch().call();
RevWalk rw = testRepo.getRevWalk(); RevWalk rw = testRepo.getRevWalk();
RevCommit master = rw.parseCommit(getRemoteHead(project, "master")); RevCommit master = rw.parseCommit(projectOperations.project(project).getHead("master"));
RevCommit patchSet = parseCurrentRevision(rw, change.getChangeId()); RevCommit patchSet = parseCurrentRevision(rw, change.getChangeId());
assertThat(rw.isMergedInto(patchSet, master)).isTrue(); assertThat(rw.isMergedInto(patchSet, master)).isTrue();
@@ -963,13 +964,13 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
repoA.git().fetch().call(); repoA.git().fetch().call();
RevWalk rwA = repoA.getRevWalk(); RevWalk rwA = repoA.getRevWalk();
RevCommit masterA = rwA.parseCommit(getRemoteHead(keyA, "master")); RevCommit masterA = rwA.parseCommit(projectOperations.project(keyA).getHead("master"));
RevCommit change1Ps = parseCurrentRevision(rwA, change1.getChangeId()); RevCommit change1Ps = parseCurrentRevision(rwA, change1.getChangeId());
assertThat(rwA.isMergedInto(change1Ps, masterA)).isTrue(); assertThat(rwA.isMergedInto(change1Ps, masterA)).isTrue();
repoB.git().fetch().call(); repoB.git().fetch().call();
RevWalk rwB = repoB.getRevWalk(); RevWalk rwB = repoB.getRevWalk();
RevCommit masterB = rwB.parseCommit(getRemoteHead(keyB, "master")); RevCommit masterB = rwB.parseCommit(projectOperations.project(keyB).getHead("master"));
RevCommit change2Ps = parseCurrentRevision(rwB, change2.getChangeId()); RevCommit change2Ps = parseCurrentRevision(rwB, change2.getChangeId());
assertThat(rwB.isMergedInto(change2Ps, masterB)).isTrue(); assertThat(rwB.isMergedInto(change2Ps, masterB)).isTrue();
@@ -984,7 +985,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
ci.matchAuthorToCommitterDate = InheritableBoolean.TRUE; ci.matchAuthorToCommitterDate = InheritableBoolean.TRUE;
gApi.projects().name(project.get()).config(ci); gApi.projects().name(project.get()).config(ci);
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change = createChange("Change 1", "b", "b"); PushOneCommit.Result change = createChange("Change 1", "b", "b");
@@ -998,7 +999,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
} }
submit(change2.getChangeId()); submit(change2.getChangeId());
assertAuthorAndCommitDateEquals(getRemoteHead()); assertAuthorAndCommitDateEquals(projectOperations.project(project).getHead("master"));
} }
@Test @Test
@@ -1088,7 +1089,8 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
assertThat(actual).hasSize(1); assertThat(actual).hasSize(1);
submit(change.getChangeId()); submit(change.getChangeId());
assertThat(getRemoteHead().getId()).isEqualTo(change.getCommit()); assertThat(projectOperations.project(project).getHead("master").getId())
.isEqualTo(change.getCommit());
assertTrees(project, actual); assertTrees(project, actual);
} }
@@ -1108,7 +1110,8 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
assertThat(actual).hasSize(1); assertThat(actual).hasSize(1);
submit(change.getChangeId()); submit(change.getChangeId());
assertThat(getRemoteHead().getId()).isEqualTo(change.getCommit()); assertThat(projectOperations.project(project).getHead("master").getId())
.isEqualTo(change.getCommit());
assertTrees(project, actual); assertTrees(project, actual);
} }
@@ -1278,7 +1281,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
protected void assertCherryPick(TestRepository<?> testRepo, boolean contentMerge) protected void assertCherryPick(TestRepository<?> testRepo, boolean contentMerge)
throws Throwable { throws Throwable {
assertRebase(testRepo, contentMerge); assertRebase(testRepo, contentMerge);
RevCommit remoteHead = getRemoteHead(); RevCommit remoteHead = projectOperations.project(project).getHead("master");
assertThat(remoteHead.getFooterLines("Reviewed-On")).isNotEmpty(); assertThat(remoteHead.getFooterLines("Reviewed-On")).isNotEmpty();
assertThat(remoteHead.getFooterLines("Reviewed-By")).isNotEmpty(); assertThat(remoteHead.getFooterLines("Reviewed-By")).isNotEmpty();
} }
@@ -1286,7 +1289,7 @@ public abstract class AbstractSubmit extends AbstractDaemonTest {
protected void assertRebase(TestRepository<?> testRepo, boolean contentMerge) throws Throwable { protected void assertRebase(TestRepository<?> testRepo, boolean contentMerge) throws Throwable {
Repository repo = testRepo.getRepository(); Repository repo = testRepo.getRepository();
RevCommit localHead = getHead(repo, "HEAD"); RevCommit localHead = getHead(repo, "HEAD");
RevCommit remoteHead = getRemoteHead(); RevCommit remoteHead = projectOperations.project(project).getHead("master");
assertThat(localHead.getId()).isNotEqualTo(remoteHead.getId()); assertThat(localHead.getId()).isNotEqualTo(remoteHead.getId());
assertThat(remoteHead.getParentCount()).isEqualTo(1); assertThat(remoteHead.getParentCount()).isEqualTo(1);
if (!contentMerge) { if (!contentMerge) {

View File

@@ -27,15 +27,15 @@ public abstract class AbstractSubmitByMerge extends AbstractSubmit {
@Test @Test
public void submitWithMerge() throws Throwable { public void submitWithMerge() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange("Change 1", "a.txt", "content"); PushOneCommit.Result change = createChange("Change 1", "a.txt", "content");
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit oldHead = getRemoteHead(); RevCommit oldHead = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change2 = createChange("Change 2", "b.txt", "other content"); PushOneCommit.Result change2 = createChange("Change 2", "b.txt", "other content");
submit(change2.getChangeId()); submit(change2.getChangeId());
RevCommit head = getRemoteHead(); RevCommit head = projectOperations.project(project).getHead("master");
assertThat(head.getParentCount()).isEqualTo(2); assertThat(head.getParentCount()).isEqualTo(2);
assertThat(head.getParent(0)).isEqualTo(oldHead); assertThat(head.getParent(0)).isEqualTo(oldHead);
assertThat(head.getParent(1)).isEqualTo(change2.getCommit()); assertThat(head.getParent(1)).isEqualTo(change2.getCommit());
@@ -49,11 +49,11 @@ public abstract class AbstractSubmitByMerge extends AbstractSubmit {
PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "aaa\nbbb\nccc\nddd\n"); PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "aaa\nbbb\nccc\nddd\n");
submit(change2.getChangeId()); submit(change2.getChangeId());
RevCommit oldHead = getRemoteHead(); RevCommit oldHead = projectOperations.project(project).getHead("master");
testRepo.reset(change.getCommit()); testRepo.reset(change.getCommit());
PushOneCommit.Result change3 = createChange("Change 3", "a.txt", "bbb\nccc\n"); PushOneCommit.Result change3 = createChange("Change 3", "a.txt", "bbb\nccc\n");
submit(change3.getChangeId()); submit(change3.getChangeId());
RevCommit head = getRemoteHead(); RevCommit head = projectOperations.project(project).getHead("master");
assertThat(head.getParentCount()).isEqualTo(2); assertThat(head.getParentCount()).isEqualTo(2);
assertThat(head.getParent(0)).isEqualTo(oldHead); assertThat(head.getParent(0)).isEqualTo(oldHead);
assertThat(head.getParent(1)).isEqualTo(change3.getCommit()); assertThat(head.getParent(1)).isEqualTo(change3.getCommit());
@@ -62,11 +62,11 @@ public abstract class AbstractSubmitByMerge extends AbstractSubmit {
@Test @Test
@TestProjectInput(useContentMerge = InheritableBoolean.TRUE) @TestProjectInput(useContentMerge = InheritableBoolean.TRUE)
public void submitWithContentMerge_Conflict() throws Throwable { public void submitWithContentMerge_Conflict() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange("Change 1", "a.txt", "content"); PushOneCommit.Result change = createChange("Change 1", "a.txt", "content");
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit oldHead = getRemoteHead(); RevCommit oldHead = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "other content"); PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "other content");
submitWithConflict( submitWithConflict(
@@ -78,7 +78,7 @@ public abstract class AbstractSubmitByMerge extends AbstractSubmit {
+ "Change could not be merged due to a path conflict. " + "Change could not be merged due to a path conflict. "
+ "Please rebase the change locally " + "Please rebase the change locally "
+ "and upload the rebased commit for review."); + "and upload the rebased commit for review.");
assertThat(getRemoteHead()).isEqualTo(oldHead); assertThat(projectOperations.project(project).getHead("master")).isEqualTo(oldHead);
} }
@Test @Test
@@ -88,7 +88,8 @@ public abstract class AbstractSubmitByMerge extends AbstractSubmit {
PushOneCommit.Result change2 = createChange(); PushOneCommit.Result change2 = createChange();
approve(change1.getChangeId()); approve(change1.getChangeId());
submit(change2.getChangeId()); submit(change2.getChangeId());
assertThat(getRemoteHead().getId()).isEqualTo(change2.getCommit()); assertThat(projectOperations.project(project).getHead("master").getId())
.isEqualTo(change2.getCommit());
} }
@Test @Test
@@ -108,7 +109,7 @@ public abstract class AbstractSubmitByMerge extends AbstractSubmit {
approve(change1.getChangeId()); approve(change1.getChangeId());
submit(change2.getChangeId()); submit(change2.getChangeId());
RevCommit head = getRemoteHead(); RevCommit head = projectOperations.project(project).getHead("master");
assertThat(head.getParents()).hasLength(2); assertThat(head.getParents()).hasLength(2);
assertThat(head.getParent(0)).isEqualTo(change1.getCommit()); assertThat(head.getParent(0)).isEqualTo(change1.getCommit());
assertThat(head.getParent(1)).isEqualTo(change2.getCommit()); assertThat(head.getParent(1)).isEqualTo(change2.getCommit());

View File

@@ -73,16 +73,16 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
protected ImmutableList<PushOneCommit.Result> submitWithRebase(TestAccount submitter) protected ImmutableList<PushOneCommit.Result> submitWithRebase(TestAccount submitter)
throws Throwable { throws Throwable {
requestScopeOperations.setApiUser(submitter.id()); requestScopeOperations.setApiUser(submitter.id());
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange("Change 1", "a.txt", "content"); PushOneCommit.Result change = createChange("Change 1", "a.txt", "content");
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit headAfterFirstSubmit = getRemoteHead(); RevCommit headAfterFirstSubmit = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change2 = createChange("Change 2", "b.txt", "other content"); PushOneCommit.Result change2 = createChange("Change 2", "b.txt", "other content");
submit(change2.getChangeId()); submit(change2.getChangeId());
assertRebase(testRepo, false); assertRebase(testRepo, false);
RevCommit headAfterSecondSubmit = getRemoteHead(); RevCommit headAfterSecondSubmit = projectOperations.project(project).getHead("master");
assertThat(headAfterSecondSubmit.getParent(0)).isEqualTo(headAfterFirstSubmit); assertThat(headAfterSecondSubmit.getParent(0)).isEqualTo(headAfterFirstSubmit);
assertApproved(change2.getChangeId(), submitter); assertApproved(change2.getChangeId(), submitter);
assertCurrentRevision(change2.getChangeId(), 2, headAfterSecondSubmit); assertCurrentRevision(change2.getChangeId(), 2, headAfterSecondSubmit);
@@ -103,10 +103,10 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
@Test @Test
public void submitWithRebaseMultipleChanges() throws Throwable { public void submitWithRebaseMultipleChanges() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change1 = createChange("Change 1", "a.txt", "content"); PushOneCommit.Result change1 = createChange("Change 1", "a.txt", "content");
submit(change1.getChangeId()); submit(change1.getChangeId());
RevCommit headAfterFirstSubmit = getRemoteHead(); RevCommit headAfterFirstSubmit = projectOperations.project(project).getHead("master");
if (getSubmitType() == SubmitType.REBASE_ALWAYS) { if (getSubmitType() == SubmitType.REBASE_ALWAYS) {
assertCurrentRevision(change1.getChangeId(), 2, headAfterFirstSubmit); assertCurrentRevision(change1.getChangeId(), 2, headAfterFirstSubmit);
} else { } else {
@@ -127,7 +127,7 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
assertApproved(change3.getChangeId()); assertApproved(change3.getChangeId());
assertApproved(change4.getChangeId()); assertApproved(change4.getChangeId());
RevCommit headAfterSecondSubmit = parse(getRemoteHead()); RevCommit headAfterSecondSubmit = parse(projectOperations.project(project).getHead("master"));
assertThat(headAfterSecondSubmit.getShortMessage()).isEqualTo("Change 4"); assertThat(headAfterSecondSubmit.getShortMessage()).isEqualTo("Change 4");
assertThat(headAfterSecondSubmit).isNotEqualTo(change4.getCommit()); assertThat(headAfterSecondSubmit).isNotEqualTo(change4.getCommit());
assertCurrentRevision(change4.getChangeId(), 2, headAfterSecondSubmit); assertCurrentRevision(change4.getChangeId(), 2, headAfterSecondSubmit);
@@ -175,7 +175,7 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
|/ |/
* Initial empty repository * Initial empty repository
*/ */
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change1 = createChange("Added a", "a.txt", ""); PushOneCommit.Result change1 = createChange("Added a", "a.txt", "");
PushOneCommit change2Push = PushOneCommit change2Push =
@@ -193,7 +193,7 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
approve(change2.getChangeId()); approve(change2.getChangeId());
submit(change2.getChangeId()); submit(change2.getChangeId());
RevCommit newHead = getRemoteHead(); RevCommit newHead = projectOperations.project(project).getHead("master");
assertThat(newHead.getParentCount()).isEqualTo(2); assertThat(newHead.getParentCount()).isEqualTo(2);
RevCommit headParent1 = parse(newHead.getParent(0).getId()); RevCommit headParent1 = parse(newHead.getParent(0).getId());
@@ -220,11 +220,11 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
@Test @Test
@TestProjectInput(useContentMerge = InheritableBoolean.TRUE) @TestProjectInput(useContentMerge = InheritableBoolean.TRUE)
public void submitWithContentMerge_Conflict() throws Throwable { public void submitWithContentMerge_Conflict() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange("Change 1", "a.txt", "content"); PushOneCommit.Result change = createChange("Change 1", "a.txt", "content");
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit headAfterFirstSubmit = getRemoteHead(); RevCommit headAfterFirstSubmit = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "other content"); PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "other content");
submitWithConflict( submitWithConflict(
@@ -232,7 +232,7 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
"Cannot rebase " "Cannot rebase "
+ change2.getCommit().name() + change2.getCommit().name()
+ ": The change could not be rebased due to a conflict during merge."); + ": The change could not be rebased due to a conflict during merge.");
RevCommit head = getRemoteHead(); RevCommit head = projectOperations.project(project).getHead("master");
assertThat(head).isEqualTo(headAfterFirstSubmit); assertThat(head).isEqualTo(headAfterFirstSubmit);
assertCurrentRevision(change2.getChangeId(), 1, change2.getCommit()); assertCurrentRevision(change2.getChangeId(), 1, change2.getCommit());
assertNoSubmitter(change2.getChangeId(), 1); assertNoSubmitter(change2.getChangeId(), 1);
@@ -252,7 +252,7 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
@Test @Test
public void submitAfterReorderOfCommits() throws Throwable { public void submitAfterReorderOfCommits() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
// Create two commits and push. // Create two commits and push.
RevCommit c1 = commitBuilder().add("a.txt", "1").message("subject: 1").create(); RevCommit c1 = commitBuilder().add("a.txt", "1").message("subject: 1").create();
@@ -271,7 +271,7 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
approve(id1); approve(id1);
approve(id2); approve(id2);
submit(id1); submit(id1);
RevCommit headAfterSubmit = getRemoteHead(); RevCommit headAfterSubmit = projectOperations.project(project).getHead("master");
assertRefUpdatedEvents(initialHead, headAfterSubmit); assertRefUpdatedEvents(initialHead, headAfterSubmit);
assertChangeMergedEvents(id2, headAfterSubmit.name(), id1, headAfterSubmit.name()); assertChangeMergedEvents(id2, headAfterSubmit.name(), id1, headAfterSubmit.name());
@@ -279,7 +279,7 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
@Test @Test
public void submitChangesAfterBranchOnSecond() throws Throwable { public void submitChangesAfterBranchOnSecond() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange(); PushOneCommit.Result change = createChange();
approve(change.getChangeId()); approve(change.getChangeId());
@@ -293,7 +293,7 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
assertMerged(change2.getChangeId()); assertMerged(change2.getChangeId());
assertMerged(change.getChangeId()); assertMerged(change.getChangeId());
RevCommit newHead = getRemoteHead(); RevCommit newHead = projectOperations.project(this.project).getHead("master");
assertRefUpdatedEvents(initialHead, newHead); assertRefUpdatedEvents(initialHead, newHead);
assertChangeMergedEvents( assertChangeMergedEvents(
change.getChangeId(), newHead.name(), change2.getChangeId(), newHead.name()); change.getChangeId(), newHead.name(), change2.getChangeId(), newHead.name());
@@ -302,7 +302,7 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
@Test @Test
@TestProjectInput(useContentMerge = InheritableBoolean.TRUE) @TestProjectInput(useContentMerge = InheritableBoolean.TRUE)
public void submitFastForwardIdenticalTree() throws Throwable { public void submitFastForwardIdenticalTree() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change1 = createChange("Change 1", "a.txt", "a"); PushOneCommit.Result change1 = createChange("Change 1", "a.txt", "a");
PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "a"); PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "a");
@@ -313,18 +313,18 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change0 = createChange("Change 0", "b.txt", "b"); PushOneCommit.Result change0 = createChange("Change 0", "b.txt", "b");
submit(change0.getChangeId()); submit(change0.getChangeId());
RevCommit headAfterChange0 = getRemoteHead(); RevCommit headAfterChange0 = projectOperations.project(project).getHead("master");
assertThat(headAfterChange0.getShortMessage()).isEqualTo("Change 0"); assertThat(headAfterChange0.getShortMessage()).isEqualTo("Change 0");
submit(change1.getChangeId()); submit(change1.getChangeId());
RevCommit headAfterChange1 = getRemoteHead(); RevCommit headAfterChange1 = projectOperations.project(project).getHead("master");
assertThat(headAfterChange1.getShortMessage()).isEqualTo("Change 1"); assertThat(headAfterChange1.getShortMessage()).isEqualTo("Change 1");
assertThat(headAfterChange0).isEqualTo(headAfterChange1.getParent(0)); assertThat(headAfterChange0).isEqualTo(headAfterChange1.getParent(0));
// Do manual rebase first. // Do manual rebase first.
gApi.changes().id(change2.getChangeId()).current().rebase(); gApi.changes().id(change2.getChangeId()).current().rebase();
submit(change2.getChangeId()); submit(change2.getChangeId());
RevCommit headAfterChange2 = getRemoteHead(); RevCommit headAfterChange2 = projectOperations.project(project).getHead("master");
assertThat(headAfterChange2.getShortMessage()).isEqualTo("Change 2"); assertThat(headAfterChange2.getShortMessage()).isEqualTo("Change 2");
assertThat(headAfterChange1).isEqualTo(headAfterChange2.getParent(0)); assertThat(headAfterChange1).isEqualTo(headAfterChange2.getParent(0));
@@ -351,7 +351,7 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
change1 = change1 =
amendChange(change1.getChangeId(), "subject 1 amend", "fileName 2", "rework content 2"); amendChange(change1.getChangeId(), "subject 1 amend", "fileName 2", "rework content 2");
submit(change1.getChangeId()); submit(change1.getChangeId());
headAfterChange1 = getRemoteHead(); headAfterChange1 = projectOperations.project(project).getHead("master");
submitWithConflict( submitWithConflict(
change2.getChangeId(), change2.getChangeId(),
@@ -359,13 +359,13 @@ public abstract class AbstractSubmitByRebase extends AbstractSubmit {
+ change2.getCommit().getName() + change2.getCommit().getName()
+ ": " + ": "
+ "The change could not be rebased due to a conflict during merge."); + "The change could not be rebased due to a conflict during merge.");
assertThat(getRemoteHead()).isEqualTo(headAfterChange1); assertThat(projectOperations.project(project).getHead("master")).isEqualTo(headAfterChange1);
} }
@Test @Test
@TestProjectInput(useContentMerge = InheritableBoolean.TRUE) @TestProjectInput(useContentMerge = InheritableBoolean.TRUE)
public void submitChainOneByOneManualRebase() throws Throwable { public void submitChainOneByOneManualRebase() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change1 = createChange("subject 1", "fileName 1", "content 1"); PushOneCommit.Result change1 = createChange("subject 1", "fileName 1", "content 1");
PushOneCommit.Result change2 = createChange("subject 2", "fileName 2", "content 2"); PushOneCommit.Result change2 = createChange("subject 2", "fileName 2", "content 2");

View File

@@ -392,7 +392,7 @@ public class CreateChangeIT extends AbstractDaemonTest {
cherry.current().review(ReviewInput.approve()); cherry.current().review(ReviewInput.approve());
cherry.current().submit(); cherry.current().submit();
ObjectId remoteId = getRemoteHead(); ObjectId remoteId = projectOperations.project(project).getHead("master");
assertThat(remoteId).isNotEqualTo(commitId); assertThat(remoteId).isNotEqualTo(commitId);
ChangeInput in = newMergeChangeInput("master", commitId.getName(), ""); ChangeInput in = newMergeChangeInput("master", commitId.getName(), "");

View File

@@ -131,7 +131,7 @@ public class PrivateByDefaultIT extends AbstractDaemonTest {
public void pushDraftsWithPrivateByDefaultAndDisablePrivateChangesTrue() throws Exception { public void pushDraftsWithPrivateByDefaultAndDisablePrivateChangesTrue() throws Exception {
setPrivateByDefault(project2, InheritableBoolean.TRUE); setPrivateByDefault(project2, InheritableBoolean.TRUE);
RevCommit initialHead = getRemoteHead(project2, "master"); RevCommit initialHead = projectOperations.project(project2).getHead("master");
TestRepository<InMemoryRepository> testRepo = cloneProject(project2); TestRepository<InMemoryRepository> testRepo = cloneProject(project2);
PushOneCommit.Result result = PushOneCommit.Result result =
pushFactory.create(admin.newIdent(), testRepo).to("refs/for/master%draft"); pushFactory.create(admin.newIdent(), testRepo).to("refs/for/master%draft");

View File

@@ -48,11 +48,11 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
@Test @Test
public void submitWithCherryPickIfFastForwardPossible() throws Throwable { public void submitWithCherryPickIfFastForwardPossible() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange(); PushOneCommit.Result change = createChange();
submit(change.getChangeId()); submit(change.getChangeId());
assertCherryPick(testRepo, false); assertCherryPick(testRepo, false);
RevCommit newHead = getRemoteHead(); RevCommit newHead = projectOperations.project(project).getHead("master");
assertThat(newHead.getParent(0)).isEqualTo(change.getCommit().getParent(0)); assertThat(newHead.getParent(0)).isEqualTo(change.getCommit().getParent(0));
assertRefUpdatedEvents(initialHead, newHead); assertRefUpdatedEvents(initialHead, newHead);
@@ -61,16 +61,16 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
@Test @Test
public void submitWithCherryPick() throws Throwable { public void submitWithCherryPick() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange("Change 1", "a.txt", "content"); PushOneCommit.Result change = createChange("Change 1", "a.txt", "content");
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit headAfterFirstSubmit = getRemoteHead(); RevCommit headAfterFirstSubmit = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change2 = createChange("Change 2", "b.txt", "other content"); PushOneCommit.Result change2 = createChange("Change 2", "b.txt", "other content");
submit(change2.getChangeId()); submit(change2.getChangeId());
assertCherryPick(testRepo, false); assertCherryPick(testRepo, false);
RevCommit newHead = getRemoteHead(); RevCommit newHead = projectOperations.project(project).getHead("master");
assertThat(newHead.getParentCount()).isEqualTo(1); assertThat(newHead.getParentCount()).isEqualTo(1);
assertThat(newHead.getParent(0)).isEqualTo(headAfterFirstSubmit); assertThat(newHead.getParent(0)).isEqualTo(headAfterFirstSubmit);
assertCurrentRevision(change2.getChangeId(), 2, newHead); assertCurrentRevision(change2.getChangeId(), 2, newHead);
@@ -108,19 +108,19 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
@Test @Test
@TestProjectInput(useContentMerge = InheritableBoolean.TRUE) @TestProjectInput(useContentMerge = InheritableBoolean.TRUE)
public void submitWithContentMerge() throws Throwable { public void submitWithContentMerge() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange("Change 1", "a.txt", "aaa\nbbb\nccc\n"); PushOneCommit.Result change = createChange("Change 1", "a.txt", "aaa\nbbb\nccc\n");
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit headAfterFirstSubmit = getRemoteHead(); RevCommit headAfterFirstSubmit = projectOperations.project(project).getHead("master");
PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "aaa\nbbb\nccc\nddd\n"); PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "aaa\nbbb\nccc\nddd\n");
submit(change2.getChangeId()); submit(change2.getChangeId());
RevCommit headAfterSecondSubmit = getRemoteHead(); RevCommit headAfterSecondSubmit = projectOperations.project(project).getHead("master");
testRepo.reset(change.getCommit()); testRepo.reset(change.getCommit());
PushOneCommit.Result change3 = createChange("Change 3", "a.txt", "bbb\nccc\n"); PushOneCommit.Result change3 = createChange("Change 3", "a.txt", "bbb\nccc\n");
submit(change3.getChangeId()); submit(change3.getChangeId());
assertCherryPick(testRepo, true); assertCherryPick(testRepo, true);
RevCommit headAfterThirdSubmit = getRemoteHead(); RevCommit headAfterThirdSubmit = projectOperations.project(project).getHead("master");
assertThat(headAfterThirdSubmit.getParent(0)).isEqualTo(headAfterSecondSubmit); assertThat(headAfterThirdSubmit.getParent(0)).isEqualTo(headAfterSecondSubmit);
assertApproved(change3.getChangeId()); assertApproved(change3.getChangeId());
assertCurrentRevision(change3.getChangeId(), 2, headAfterThirdSubmit); assertCurrentRevision(change3.getChangeId(), 2, headAfterThirdSubmit);
@@ -146,11 +146,11 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
@Test @Test
@TestProjectInput(useContentMerge = InheritableBoolean.TRUE) @TestProjectInput(useContentMerge = InheritableBoolean.TRUE)
public void submitWithContentMerge_Conflict() throws Throwable { public void submitWithContentMerge_Conflict() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange("Change 1", "a.txt", "content"); PushOneCommit.Result change = createChange("Change 1", "a.txt", "content");
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit newHead = getRemoteHead(); RevCommit newHead = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "other content"); PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "other content");
submitWithConflict( submitWithConflict(
@@ -162,7 +162,7 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
+ "merged due to a path conflict. Please rebase the change locally and " + "merged due to a path conflict. Please rebase the change locally and "
+ "upload the rebased commit for review."); + "upload the rebased commit for review.");
assertThat(getRemoteHead()).isEqualTo(newHead); assertThat(projectOperations.project(project).getHead("master")).isEqualTo(newHead);
assertCurrentRevision(change2.getChangeId(), 1, change2.getCommit()); assertCurrentRevision(change2.getChangeId(), 1, change2.getCommit());
assertNoSubmitter(change2.getChangeId(), 1); assertNoSubmitter(change2.getChangeId(), 1);
@@ -172,17 +172,17 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
@Test @Test
public void submitOutOfOrder() throws Throwable { public void submitOutOfOrder() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange("Change 1", "a.txt", "content"); PushOneCommit.Result change = createChange("Change 1", "a.txt", "content");
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit headAfterFirstSubmit = getRemoteHead(); RevCommit headAfterFirstSubmit = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
createChange("Change 2", "b.txt", "other content"); createChange("Change 2", "b.txt", "other content");
PushOneCommit.Result change3 = createChange("Change 3", "c.txt", "different content"); PushOneCommit.Result change3 = createChange("Change 3", "c.txt", "different content");
submit(change3.getChangeId()); submit(change3.getChangeId());
assertCherryPick(testRepo, false); assertCherryPick(testRepo, false);
RevCommit headAfterSecondSubmit = getRemoteHead(); RevCommit headAfterSecondSubmit = projectOperations.project(project).getHead("master");
assertThat(headAfterSecondSubmit.getParent(0)).isEqualTo(headAfterFirstSubmit); assertThat(headAfterSecondSubmit.getParent(0)).isEqualTo(headAfterFirstSubmit);
assertApproved(change3.getChangeId()); assertApproved(change3.getChangeId());
assertCurrentRevision(change3.getChangeId(), 2, headAfterSecondSubmit); assertCurrentRevision(change3.getChangeId(), 2, headAfterSecondSubmit);
@@ -200,11 +200,11 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
@Test @Test
public void submitOutOfOrder_Conflict() throws Throwable { public void submitOutOfOrder_Conflict() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange("Change 1", "a.txt", "content"); PushOneCommit.Result change = createChange("Change 1", "a.txt", "content");
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit newHead = getRemoteHead(); RevCommit newHead = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
createChange("Change 2", "b.txt", "other content"); createChange("Change 2", "b.txt", "other content");
PushOneCommit.Result change3 = createChange("Change 3", "b.txt", "different content"); PushOneCommit.Result change3 = createChange("Change 3", "b.txt", "different content");
@@ -217,7 +217,7 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
+ "merged due to a path conflict. Please rebase the change locally and " + "merged due to a path conflict. Please rebase the change locally and "
+ "upload the rebased commit for review."); + "upload the rebased commit for review.");
assertThat(getRemoteHead()).isEqualTo(newHead); assertThat(projectOperations.project(project).getHead("master")).isEqualTo(newHead);
assertCurrentRevision(change3.getChangeId(), 1, change3.getCommit()); assertCurrentRevision(change3.getChangeId(), 1, change3.getCommit());
assertNoSubmitter(change3.getChangeId(), 1); assertNoSubmitter(change3.getChangeId(), 1);
@@ -227,7 +227,7 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
@Test @Test
public void submitMultipleChanges() throws Throwable { public void submitMultipleChanges() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change = createChange("Change 1", "b", "b"); PushOneCommit.Result change = createChange("Change 1", "b", "b");
@@ -255,7 +255,7 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
@Test @Test
public void submitDependentNonConflictingChangesOutOfOrder() throws Throwable { public void submitDependentNonConflictingChangesOutOfOrder() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change = createChange("Change 1", "b", "b"); PushOneCommit.Result change = createChange("Change 1", "b", "b");
@@ -264,11 +264,11 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
// Submit succeeds; change2 is successfully cherry-picked onto head. // Submit succeeds; change2 is successfully cherry-picked onto head.
submit(change2.getChangeId()); submit(change2.getChangeId());
RevCommit headAfterFirstSubmit = getRemoteHead(); RevCommit headAfterFirstSubmit = projectOperations.project(project).getHead("master");
// Submit succeeds; change is successfully cherry-picked onto head // Submit succeeds; change is successfully cherry-picked onto head
// (which was change2's cherry-pick). // (which was change2's cherry-pick).
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit headAfterSecondSubmit = getRemoteHead(); RevCommit headAfterSecondSubmit = projectOperations.project(project).getHead("master");
// change is the new tip. // change is the new tip.
List<RevCommit> log = getRemoteLog(); List<RevCommit> log = getRemoteLog();
@@ -291,7 +291,7 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
@Test @Test
public void submitDependentConflictingChangesOutOfOrder() throws Throwable { public void submitDependentConflictingChangesOutOfOrder() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change = createChange("Change 1", "b", "b1"); PushOneCommit.Result change = createChange("Change 1", "b", "b1");
@@ -323,7 +323,7 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
@Test @Test
public void submitSubsetOfDependentChanges() throws Throwable { public void submitSubsetOfDependentChanges() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change = createChange("Change 1", "b", "b"); PushOneCommit.Result change = createChange("Change 1", "b", "b");
@@ -334,7 +334,7 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
// related to change 3 by topic or ancestor (due to cherrypicking!) // related to change 3 by topic or ancestor (due to cherrypicking!)
approve(change2.getChangeId()); approve(change2.getChangeId());
submit(change3.getChangeId()); submit(change3.getChangeId());
RevCommit newHead = getRemoteHead(); RevCommit newHead = projectOperations.project(project).getHead("master");
assertNew(change.getChangeId()); assertNew(change.getChangeId());
assertNew(change2.getChangeId()); assertNew(change2.getChangeId());
@@ -346,7 +346,7 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
@Test @Test
@TestProjectInput(useContentMerge = InheritableBoolean.TRUE) @TestProjectInput(useContentMerge = InheritableBoolean.TRUE)
public void submitIdenticalTree() throws Throwable { public void submitIdenticalTree() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change1 = createChange("Change 1", "a.txt", "a"); PushOneCommit.Result change1 = createChange("Change 1", "a.txt", "a");
@@ -354,12 +354,13 @@ public class SubmitByCherryPickIT extends AbstractSubmit {
PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "a"); PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "a");
submit(change1.getChangeId()); submit(change1.getChangeId());
RevCommit headAfterFirstSubmit = getRemoteHead(); RevCommit headAfterFirstSubmit = projectOperations.project(project).getHead("master");
assertThat(headAfterFirstSubmit.getShortMessage()).isEqualTo("Change 1"); assertThat(headAfterFirstSubmit.getShortMessage()).isEqualTo("Change 1");
submit(change2.getChangeId(), new SubmitInput(), null, null); submit(change2.getChangeId(), new SubmitInput(), null, null);
assertThat(getRemoteHead()).isEqualTo(headAfterFirstSubmit); assertThat(projectOperations.project(project).getHead("master"))
.isEqualTo(headAfterFirstSubmit);
ChangeInfo info2 = get(change2.getChangeId(), MESSAGES); ChangeInfo info2 = get(change2.getChangeId(), MESSAGES);
assertThat(info2.status).isEqualTo(ChangeStatus.MERGED); assertThat(info2.status).isEqualTo(ChangeStatus.MERGED);

View File

@@ -38,10 +38,10 @@ public class SubmitByFastForwardIT extends AbstractSubmit {
@Test @Test
public void submitWithFastForward() throws Throwable { public void submitWithFastForward() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange(); PushOneCommit.Result change = createChange();
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit updatedHead = getRemoteHead(); RevCommit updatedHead = projectOperations.project(project).getHead("master");
assertThat(updatedHead.getId()).isEqualTo(change.getCommit()); assertThat(updatedHead.getId()).isEqualTo(change.getCommit());
assertThat(updatedHead.getParent(0)).isEqualTo(initialHead); assertThat(updatedHead.getParent(0)).isEqualTo(initialHead);
assertSubmitter(change.getChangeId(), 1); assertSubmitter(change.getChangeId(), 1);
@@ -52,7 +52,7 @@ public class SubmitByFastForwardIT extends AbstractSubmit {
@Test @Test
public void submitMultipleChangesWithFastForward() throws Throwable { public void submitMultipleChangesWithFastForward() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange(); PushOneCommit.Result change = createChange();
PushOneCommit.Result change2 = createChange(); PushOneCommit.Result change2 = createChange();
@@ -65,7 +65,7 @@ public class SubmitByFastForwardIT extends AbstractSubmit {
approve(id2); approve(id2);
submit(id3); submit(id3);
RevCommit updatedHead = getRemoteHead(); RevCommit updatedHead = projectOperations.project(project).getHead("master");
assertThat(updatedHead.getId()).isEqualTo(change3.getCommit()); assertThat(updatedHead.getId()).isEqualTo(change3.getCommit());
assertThat(updatedHead.getParent(0).getId()).isEqualTo(change2.getCommit()); assertThat(updatedHead.getParent(0).getId()).isEqualTo(change2.getCommit());
assertSubmitter(change.getChangeId(), 1); assertSubmitter(change.getChangeId(), 1);
@@ -84,7 +84,7 @@ public class SubmitByFastForwardIT extends AbstractSubmit {
@Test @Test
public void submitTwoChangesWithFastForward_missingDependency() throws Throwable { public void submitTwoChangesWithFastForward_missingDependency() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change1 = createChange(); PushOneCommit.Result change1 = createChange();
PushOneCommit.Result change2 = createChange(); PushOneCommit.Result change2 = createChange();
@@ -96,7 +96,7 @@ public class SubmitByFastForwardIT extends AbstractSubmit {
+ id1 + id1
+ ": needs Code-Review"); + ": needs Code-Review");
RevCommit updatedHead = getRemoteHead(); RevCommit updatedHead = projectOperations.project(project).getHead("master");
assertThat(updatedHead.getId()).isEqualTo(initialHead.getId()); assertThat(updatedHead.getId()).isEqualTo(initialHead.getId());
assertRefUpdatedEvents(); assertRefUpdatedEvents();
assertChangeMergedEvents(); assertChangeMergedEvents();
@@ -104,11 +104,11 @@ public class SubmitByFastForwardIT extends AbstractSubmit {
@Test @Test
public void submitFastForwardNotPossible_Conflict() throws Throwable { public void submitFastForwardNotPossible_Conflict() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange("Change 1", "a.txt", "content"); PushOneCommit.Result change = createChange("Change 1", "a.txt", "content");
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit headAfterFirstSubmit = getRemoteHead(); RevCommit headAfterFirstSubmit = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change2 = createChange("Change 2", "b.txt", "other content"); PushOneCommit.Result change2 = createChange("Change 2", "b.txt", "other content");
@@ -129,7 +129,8 @@ public class SubmitByFastForwardIT extends AbstractSubmit {
+ ": Project policy requires " + ": Project policy requires "
+ "all submissions to be a fast-forward. Please rebase the change " + "all submissions to be a fast-forward. Please rebase the change "
+ "locally and upload again for review."); + "locally and upload again for review.");
assertThat(getRemoteHead()).isEqualTo(headAfterFirstSubmit); assertThat(projectOperations.project(project).getHead("master"))
.isEqualTo(headAfterFirstSubmit);
assertSubmitter(change.getChangeId(), 1); assertSubmitter(change.getChangeId(), 1);
assertRefUpdatedEvents(initialHead, headAfterFirstSubmit); assertRefUpdatedEvents(initialHead, headAfterFirstSubmit);
@@ -138,7 +139,7 @@ public class SubmitByFastForwardIT extends AbstractSubmit {
@Test @Test
public void submitSameCommitsAsInExperimentalBranch() throws Throwable { public void submitSameCommitsAsInExperimentalBranch() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
projectOperations projectOperations
.project(project) .project(project)
@@ -158,9 +159,9 @@ public class SubmitByFastForwardIT extends AbstractSubmit {
.isEqualTo(c1.getId()); .isEqualTo(c1.getId());
submit(id1); submit(id1);
RevCommit headAfterSubmit = getRemoteHead(); RevCommit headAfterSubmit = projectOperations.project(project).getHead("master");
assertThat(getRemoteHead().getId()).isEqualTo(c1.getId()); assertThat(projectOperations.project(project).getHead("master").getId()).isEqualTo(c1.getId());
assertSubmitter(id1, 1); assertSubmitter(id1, 1);
assertRefUpdatedEvents(initialHead, headAfterSubmit); assertRefUpdatedEvents(initialHead, headAfterSubmit);

View File

@@ -30,10 +30,10 @@ public class SubmitByMergeAlwaysIT extends AbstractSubmitByMerge {
@Test @Test
public void submitWithMergeIfFastForwardPossible() throws Throwable { public void submitWithMergeIfFastForwardPossible() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange(); PushOneCommit.Result change = createChange();
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit headAfterSubmit = getRemoteHead(); RevCommit headAfterSubmit = projectOperations.project(project).getHead("master");
assertThat(headAfterSubmit.getParentCount()).isEqualTo(2); assertThat(headAfterSubmit.getParentCount()).isEqualTo(2);
assertThat(headAfterSubmit.getParent(0)).isEqualTo(initialHead); assertThat(headAfterSubmit.getParent(0)).isEqualTo(initialHead);
assertThat(headAfterSubmit.getParent(1)).isEqualTo(change.getCommit()); assertThat(headAfterSubmit.getParent(1)).isEqualTo(change.getCommit());
@@ -47,7 +47,7 @@ public class SubmitByMergeAlwaysIT extends AbstractSubmitByMerge {
@Test @Test
public void submitMultipleChanges() throws Throwable { public void submitMultipleChanges() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
// Submit a change so that the remote head advances // Submit a change so that the remote head advances
PushOneCommit.Result change = createChange("Change 1", "b", "b"); PushOneCommit.Result change = createChange("Change 1", "b", "b");

View File

@@ -68,10 +68,10 @@ public class SubmitByMergeIfNecessaryIT extends AbstractSubmitByMerge {
@Test @Test
public void submitWithFastForward() throws Throwable { public void submitWithFastForward() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange(); PushOneCommit.Result change = createChange();
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit updatedHead = getRemoteHead(); RevCommit updatedHead = projectOperations.project(project).getHead("master");
assertThat(updatedHead.getId()).isEqualTo(change.getCommit()); assertThat(updatedHead.getId()).isEqualTo(change.getCommit());
assertThat(updatedHead.getParent(0)).isEqualTo(initialHead); assertThat(updatedHead.getParent(0)).isEqualTo(initialHead);
assertSubmitter(change.getChangeId(), 1); assertSubmitter(change.getChangeId(), 1);
@@ -84,7 +84,7 @@ public class SubmitByMergeIfNecessaryIT extends AbstractSubmitByMerge {
@Test @Test
public void submitMultipleChanges() throws Throwable { public void submitMultipleChanges() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
testRepo.reset(initialHead); testRepo.reset(initialHead);
PushOneCommit.Result change = createChange("Change 1", "b", "b"); PushOneCommit.Result change = createChange("Change 1", "b", "b");
@@ -145,8 +145,8 @@ public class SubmitByMergeIfNecessaryIT extends AbstractSubmitByMerge {
Project.NameKey p2 = projectOperations.newProject().create(); Project.NameKey p2 = projectOperations.newProject().create();
Project.NameKey p3 = projectOperations.newProject().create(); Project.NameKey p3 = projectOperations.newProject().create();
RevCommit initialHead2 = getRemoteHead(p2, "master"); RevCommit initialHead2 = projectOperations.project(p2).getHead("master");
RevCommit initialHead3 = getRemoteHead(p3, "master"); RevCommit initialHead3 = projectOperations.project(p3).getHead("master");
TestRepository<?> repo1 = cloneProject(p1); TestRepository<?> repo1 = cloneProject(p1);
TestRepository<?> repo2 = cloneProject(p2); TestRepository<?> repo2 = cloneProject(p2);
@@ -226,9 +226,9 @@ public class SubmitByMergeIfNecessaryIT extends AbstractSubmitByMerge {
TestRepository<?> repo2 = cloneProject(p2); TestRepository<?> repo2 = cloneProject(p2);
TestRepository<?> repo3 = cloneProject(p3); TestRepository<?> repo3 = cloneProject(p3);
RevCommit initialHead1 = getRemoteHead(p1, "master"); RevCommit initialHead1 = projectOperations.project(p1).getHead("master");
RevCommit initialHead2 = getRemoteHead(p2, "master"); RevCommit initialHead2 = projectOperations.project(p2).getHead("master");
RevCommit initialHead3 = getRemoteHead(p3, "master"); RevCommit initialHead3 = projectOperations.project(p3).getHead("master");
PushOneCommit.Result change1a = PushOneCommit.Result change1a =
createChange( createChange(
@@ -315,12 +315,12 @@ public class SubmitByMergeIfNecessaryIT extends AbstractSubmitByMerge {
@Test @Test
public void submitWithMergedAncestorsOnOtherBranch() throws Throwable { public void submitWithMergedAncestorsOnOtherBranch() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change1 = PushOneCommit.Result change1 =
createChange(testRepo, "master", "base commit", "a.txt", "1", ""); createChange(testRepo, "master", "base commit", "a.txt", "1", "");
submit(change1.getChangeId()); submit(change1.getChangeId());
RevCommit headAfterFirstSubmit = getRemoteHead(); RevCommit headAfterFirstSubmit = projectOperations.project(project).getHead("master");
gApi.projects().name(project.get()).branch("branch").create(new BranchInput()); gApi.projects().name(project.get()).branch("branch").create(new BranchInput());
@@ -364,11 +364,11 @@ public class SubmitByMergeIfNecessaryIT extends AbstractSubmitByMerge {
@Test @Test
public void submitWithOpenAncestorsOnOtherBranch() throws Throwable { public void submitWithOpenAncestorsOnOtherBranch() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change1 = PushOneCommit.Result change1 =
createChange(testRepo, "master", "base commit", "a.txt", "1", ""); createChange(testRepo, "master", "base commit", "a.txt", "1", "");
submit(change1.getChangeId()); submit(change1.getChangeId());
RevCommit headAfterFirstSubmit = getRemoteHead(); RevCommit headAfterFirstSubmit = projectOperations.project(project).getHead("master");
gApi.projects().name(project.get()).branch("branch").create(new BranchInput()); gApi.projects().name(project.get()).branch("branch").create(new BranchInput());
@@ -396,7 +396,7 @@ public class SubmitByMergeIfNecessaryIT extends AbstractSubmitByMerge {
Project.NameKey p3 = projectOperations.newProject().create(); Project.NameKey p3 = projectOperations.newProject().create();
TestRepository<?> repo3 = cloneProject(p3); TestRepository<?> repo3 = cloneProject(p3);
RevCommit repo3Head = getRemoteHead(p3, "master"); RevCommit repo3Head = projectOperations.project(p3).getHead("master");
PushOneCommit.Result change3b = PushOneCommit.Result change3b =
createChange( createChange(
repo3, repo3,
@@ -437,7 +437,7 @@ public class SubmitByMergeIfNecessaryIT extends AbstractSubmitByMerge {
@Test @Test
public void gerritWorkflow() throws Throwable { public void gerritWorkflow() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
// We'll setup a master and a stable branch. // We'll setup a master and a stable branch.
// Then we create a change to be applied to master, which is // Then we create a change to be applied to master, which is
@@ -463,8 +463,8 @@ public class SubmitByMergeIfNecessaryIT extends AbstractSubmitByMerge {
gApi.changes().id(cherryId).current().submit(); gApi.changes().id(cherryId).current().submit();
// Create the merge locally // Create the merge locally
RevCommit stable = getRemoteHead(project, "stable"); RevCommit stable = projectOperations.project(project).getHead("stable");
RevCommit master = getRemoteHead(project, "master"); RevCommit master = projectOperations.project(project).getHead("master");
testRepo.git().fetch().call(); testRepo.git().fetch().call();
testRepo.git().branchCreate().setName("stable").setStartPoint(stable).call(); testRepo.git().branchCreate().setName("stable").setStartPoint(stable).call();
testRepo.git().branchCreate().setName("master").setStartPoint(master).call(); testRepo.git().branchCreate().setName("master").setStartPoint(master).call();

View File

@@ -53,11 +53,11 @@ public class SubmitByRebaseAlwaysIT extends AbstractSubmitByRebase {
@Test @Test
@TestProjectInput(useContentMerge = InheritableBoolean.TRUE) @TestProjectInput(useContentMerge = InheritableBoolean.TRUE)
public void submitWithPossibleFastForward() throws Throwable { public void submitWithPossibleFastForward() throws Throwable {
RevCommit oldHead = getRemoteHead(); RevCommit oldHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange(); PushOneCommit.Result change = createChange();
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit head = getRemoteHead(); RevCommit head = projectOperations.project(project).getHead("master");
assertThat(head.getId()).isNotEqualTo(change.getCommit()); assertThat(head.getId()).isNotEqualTo(change.getCommit());
assertThat(head.getParent(0)).isEqualTo(oldHead); assertThat(head.getParent(0)).isEqualTo(oldHead);
assertApproved(change.getChangeId()); assertApproved(change.getChangeId());

View File

@@ -33,10 +33,10 @@ public class SubmitByRebaseIfNecessaryIT extends AbstractSubmitByRebase {
@Test @Test
@TestProjectInput(useContentMerge = InheritableBoolean.TRUE) @TestProjectInput(useContentMerge = InheritableBoolean.TRUE)
public void submitWithFastForward() throws Throwable { public void submitWithFastForward() throws Throwable {
RevCommit oldHead = getRemoteHead(); RevCommit oldHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange(); PushOneCommit.Result change = createChange();
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit head = getRemoteHead(); RevCommit head = projectOperations.project(project).getHead("master");
assertThat(head.getId()).isEqualTo(change.getCommit()); assertThat(head.getId()).isEqualTo(change.getCommit());
assertThat(head.getParent(0)).isEqualTo(oldHead); assertThat(head.getParent(0)).isEqualTo(oldHead);
assertApproved(change.getChangeId()); assertApproved(change.getChangeId());
@@ -51,19 +51,19 @@ public class SubmitByRebaseIfNecessaryIT extends AbstractSubmitByRebase {
@Test @Test
@TestProjectInput(useContentMerge = InheritableBoolean.TRUE) @TestProjectInput(useContentMerge = InheritableBoolean.TRUE)
public void submitWithContentMerge() throws Throwable { public void submitWithContentMerge() throws Throwable {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
PushOneCommit.Result change = createChange("Change 1", "a.txt", "aaa\nbbb\nccc\n"); PushOneCommit.Result change = createChange("Change 1", "a.txt", "aaa\nbbb\nccc\n");
submit(change.getChangeId()); submit(change.getChangeId());
RevCommit headAfterFirstSubmit = getRemoteHead(); RevCommit headAfterFirstSubmit = projectOperations.project(project).getHead("master");
PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "aaa\nbbb\nccc\nddd\n"); PushOneCommit.Result change2 = createChange("Change 2", "a.txt", "aaa\nbbb\nccc\nddd\n");
submit(change2.getChangeId()); submit(change2.getChangeId());
RevCommit headAfterSecondSubmit = getRemoteHead(); RevCommit headAfterSecondSubmit = projectOperations.project(project).getHead("master");
testRepo.reset(change.getCommit()); testRepo.reset(change.getCommit());
PushOneCommit.Result change3 = createChange("Change 3", "a.txt", "bbb\nccc\n"); PushOneCommit.Result change3 = createChange("Change 3", "a.txt", "bbb\nccc\n");
submit(change3.getChangeId()); submit(change3.getChangeId());
assertRebase(testRepo, true); assertRebase(testRepo, true);
RevCommit headAfterThirdSubmit = getRemoteHead(); RevCommit headAfterThirdSubmit = projectOperations.project(project).getHead("master");
assertThat(headAfterThirdSubmit.getParent(0)).isEqualTo(headAfterSecondSubmit); assertThat(headAfterThirdSubmit.getParent(0)).isEqualTo(headAfterSecondSubmit);
assertApproved(change3.getChangeId()); assertApproved(change3.getChangeId());
assertCurrentRevision(change3.getChangeId(), 2, headAfterThirdSubmit); assertCurrentRevision(change3.getChangeId(), 2, headAfterThirdSubmit);

View File

@@ -60,7 +60,7 @@ public abstract class AbstractPushTag extends AbstractDaemonTest {
// clone with user to avoid inherited tag permissions of admin user // clone with user to avoid inherited tag permissions of admin user
testRepo = cloneProject(project, user); testRepo = cloneProject(project, user);
initialHead = getRemoteHead(); initialHead = projectOperations.project(project).getHead("master");
tagType = getTagType(); tagType = getTagType();
} }

View File

@@ -127,7 +127,7 @@ public class AccessIT extends AbstractDaemonTest {
@Test @Test
public void addAccessSection() throws Exception { public void addAccessSection() throws Exception {
RevCommit initialHead = getRemoteHead(newProjectName, RefNames.REFS_CONFIG); RevCommit initialHead = projectOperations.project(newProjectName).getHead(RefNames.REFS_CONFIG);
ProjectAccessInput accessInput = newProjectAccessInput(); ProjectAccessInput accessInput = newProjectAccessInput();
AccessSectionInfo accessSectionInfo = createDefaultAccessSectionInfo(); AccessSectionInfo accessSectionInfo = createDefaultAccessSectionInfo();
@@ -137,7 +137,7 @@ public class AccessIT extends AbstractDaemonTest {
assertThat(pApi().access().local).isEqualTo(accessInput.add); assertThat(pApi().access().local).isEqualTo(accessInput.add);
RevCommit updatedHead = getRemoteHead(newProjectName, RefNames.REFS_CONFIG); RevCommit updatedHead = projectOperations.project(newProjectName).getHead(RefNames.REFS_CONFIG);
eventRecorder.assertRefUpdatedEvents( eventRecorder.assertRefUpdatedEvents(
newProjectName.get(), RefNames.REFS_CONFIG, null, initialHead, initialHead, updatedHead); newProjectName.get(), RefNames.REFS_CONFIG, null, initialHead, initialHead, updatedHead);
} }

View File

@@ -44,7 +44,7 @@ public class CheckMergeabilityIT extends AbstractDaemonTest {
@Test @Test
public void checkMergeableCommit() throws Exception { public void checkMergeableCommit() throws Exception {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
testRepo testRepo
.branch("HEAD") .branch("HEAD")
.commit() .commit()
@@ -79,7 +79,7 @@ public class CheckMergeabilityIT extends AbstractDaemonTest {
@Test @Test
public void checkUnMergeableCommit() throws Exception { public void checkUnMergeableCommit() throws Exception {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
testRepo testRepo
.branch("HEAD") .branch("HEAD")
.commit() .commit()
@@ -114,7 +114,7 @@ public class CheckMergeabilityIT extends AbstractDaemonTest {
@Test @Test
public void checkOursMergeStrategy() throws Exception { public void checkOursMergeStrategy() throws Exception {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
testRepo testRepo
.branch("HEAD") .branch("HEAD")
.commit() .commit()
@@ -208,7 +208,7 @@ public class CheckMergeabilityIT extends AbstractDaemonTest {
cherry.current().review(ReviewInput.approve()); cherry.current().review(ReviewInput.approve());
cherry.current().submit(); cherry.current().submit();
ObjectId remoteId = getRemoteHead(); ObjectId remoteId = projectOperations.project(project).getHead("master");
assertThat(remoteId).isNotEqualTo(commitId); assertThat(remoteId).isNotEqualTo(commitId);
assertContentMerged("master", commitId.getName(), "recursive"); assertContentMerged("master", commitId.getName(), "recursive");
} }
@@ -234,7 +234,7 @@ public class CheckMergeabilityIT extends AbstractDaemonTest {
@Test @Test
public void checkInvalidStrategy() throws Exception { public void checkInvalidStrategy() throws Exception {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
testRepo testRepo
.branch("HEAD") .branch("HEAD")
.commit() .commit()

View File

@@ -169,7 +169,7 @@ public class DeleteBranchesIT extends AbstractDaemonTest {
private HashMap<String, RevCommit> initialRevisions(List<String> branches) throws Exception { private HashMap<String, RevCommit> initialRevisions(List<String> branches) throws Exception {
HashMap<String, RevCommit> result = new HashMap<>(); HashMap<String, RevCommit> result = new HashMap<>();
for (String branch : branches) { for (String branch : branches) {
result.put(branch, getRemoteHead(project, branch)); result.put(branch, projectOperations.project(project).getHead(branch));
} }
return result; return result;
} }

View File

@@ -120,7 +120,7 @@ public class DeleteTagsIT extends AbstractDaemonTest {
HashMap<String, RevCommit> result = new HashMap<>(); HashMap<String, RevCommit> result = new HashMap<>();
for (String tag : tags) { for (String tag : tags) {
String ref = prefixRef(tag); String ref = prefixRef(tag);
result.put(ref, getRemoteHead(project, ref)); result.put(ref, projectOperations.project(project).getHead(ref));
} }
return result; return result;
} }

View File

@@ -69,7 +69,7 @@ public class ListBranchesIT extends AbstractDaemonTest {
public void listBranches() throws Exception { public void listBranches() throws Exception {
String master = pushTo("refs/heads/master").getCommit().name(); String master = pushTo("refs/heads/master").getCommit().name();
String dev = pushTo("refs/heads/dev").getCommit().name(); String dev = pushTo("refs/heads/dev").getCommit().name();
String refsConfig = getRemoteHead(project, RefNames.REFS_CONFIG).name(); String refsConfig = projectOperations.project(project).getHead(RefNames.REFS_CONFIG).name();
assertRefs( assertRefs(
ImmutableList.of( ImmutableList.of(
branch("HEAD", "master", false), branch("HEAD", "master", false),
@@ -114,7 +114,10 @@ public class ListBranchesIT extends AbstractDaemonTest {
public void listBranchesUsingPagination() throws Exception { public void listBranchesUsingPagination() throws Exception {
BranchInfo head = branch("HEAD", "master", false); BranchInfo head = branch("HEAD", "master", false);
BranchInfo refsConfig = BranchInfo refsConfig =
branch(RefNames.REFS_CONFIG, getRemoteHead(project, RefNames.REFS_CONFIG).name(), false); branch(
RefNames.REFS_CONFIG,
projectOperations.project(project).getHead(RefNames.REFS_CONFIG).name(),
false);
BranchInfo master = BranchInfo master =
branch("refs/heads/master", pushTo("refs/heads/master").getCommit().getName(), false); branch("refs/heads/master", pushTo("refs/heads/master").getCommit().getName(), false);
BranchInfo branch1 = BranchInfo branch1 =

View File

@@ -113,7 +113,7 @@ public class SubmittedTogetherIT extends AbstractDaemonTest {
@Test @Test
public void respectWholeTopic() throws Exception { public void respectWholeTopic() throws Exception {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
// Create two independent commits and push. // Create two independent commits and push.
RevCommit c1_1 = commitBuilder().add("a.txt", "1").message("subject: 1").create(); RevCommit c1_1 = commitBuilder().add("a.txt", "1").message("subject: 1").create();
String id1 = getChangeId(c1_1); String id1 = getChangeId(c1_1);
@@ -135,7 +135,7 @@ public class SubmittedTogetherIT extends AbstractDaemonTest {
@Test @Test
public void anonymousWholeTopic() throws Exception { public void anonymousWholeTopic() throws Exception {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
RevCommit a = commitBuilder().add("a", "1").message("change 1").create(); RevCommit a = commitBuilder().add("a", "1").message("change 1").create();
pushHead(testRepo, "refs/for/master/" + name("topic"), false); pushHead(testRepo, "refs/for/master/" + name("topic"), false);
String id1 = getChangeId(a); String id1 = getChangeId(a);
@@ -157,7 +157,7 @@ public class SubmittedTogetherIT extends AbstractDaemonTest {
@Test @Test
public void topicChaining() throws Exception { public void topicChaining() throws Exception {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
RevCommit c1_1 = commitBuilder().add("a.txt", "1").message("subject: 1").create(); RevCommit c1_1 = commitBuilder().add("a.txt", "1").message("subject: 1").create();
String id1 = getChangeId(c1_1); String id1 = getChangeId(c1_1);
@@ -185,7 +185,7 @@ public class SubmittedTogetherIT extends AbstractDaemonTest {
@Test @Test
public void respectTopicsOnAncestors() throws Exception { public void respectTopicsOnAncestors() throws Exception {
RevCommit initialHead = getRemoteHead(); RevCommit initialHead = projectOperations.project(project).getHead("master");
RevCommit c1_1 = commitBuilder().add("a.txt", "1").message("subject: 1").create(); RevCommit c1_1 = commitBuilder().add("a.txt", "1").message("subject: 1").create();
String id1 = getChangeId(c1_1); String id1 = getChangeId(c1_1);

View File

@@ -85,7 +85,7 @@ public class RulesIT extends AbstractDaemonTest {
} }
private SubmitRecord.Status statusForRule() throws Exception { private SubmitRecord.Status statusForRule() throws Exception {
String oldHead = getRemoteHead().name(); String oldHead = projectOperations.project(project).getHead("master").name();
PushOneCommit.Result result1 = PushOneCommit.Result result1 =
pushFactory.create(user.newIdent(), testRepo).to("refs/for/master"); pushFactory.create(user.newIdent(), testRepo).to("refs/for/master");
testRepo.reset(oldHead); testRepo.reset(oldHead);