Test CreateMergePatchSet when there is a merge conflict
Signed-off-by: Edwin Kempin <ekempin@google.com> Change-Id: Ic39097d60264e6099bb8cbf22420fe2bcdf75d17
This commit is contained in:
committed by
David Pursehouse
parent
b9cf6d896e
commit
1b87b36052
@@ -3199,6 +3199,41 @@ public class ChangeIT extends AbstractDaemonTest {
|
||||
.isEqualTo(parent);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void createMergePatchSet_Conflict() throws Exception {
|
||||
RevCommit initialHead = projectOperations.project(project).getHead("master");
|
||||
createBranch("dev");
|
||||
|
||||
// create a change for master
|
||||
String changeId = createChange().getChangeId();
|
||||
|
||||
String fileName = "shared.txt";
|
||||
testRepo.reset(initialHead);
|
||||
PushOneCommit.Result currentMaster =
|
||||
pushFactory
|
||||
.create(admin.newIdent(), testRepo, "change 1", fileName, "content 1")
|
||||
.to("refs/heads/master");
|
||||
currentMaster.assertOkStatus();
|
||||
|
||||
// push a commit into dev branch
|
||||
testRepo.reset(initialHead);
|
||||
PushOneCommit.Result changeA =
|
||||
pushFactory
|
||||
.create(user.newIdent(), testRepo, "change 2", fileName, "content 2")
|
||||
.to("refs/heads/dev");
|
||||
changeA.assertOkStatus();
|
||||
MergeInput mergeInput = new MergeInput();
|
||||
mergeInput.source = "dev";
|
||||
MergePatchSetInput in = new MergePatchSetInput();
|
||||
in.merge = mergeInput;
|
||||
in.subject = "update change by merge ps2";
|
||||
ResourceConflictException thrown =
|
||||
assertThrows(
|
||||
ResourceConflictException.class,
|
||||
() -> gApi.changes().id(changeId).createMergePatchSet(in));
|
||||
assertThat(thrown).hasMessageThat().isEqualTo("merge conflict(s)\n" + fileName);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void createMergePatchSetInheritParent() throws Exception {
|
||||
RevCommit initialHead = projectOperations.project(project).getHead("master");
|
||||
|
||||
Reference in New Issue
Block a user