diff options
Diffstat (limited to 'merge_test.go')
| -rw-r--r-- | merge_test.go | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/merge_test.go b/merge_test.go index cc7af81..7e884c0 100644 --- a/merge_test.go +++ b/merge_test.go @@ -1,6 +1,7 @@ package git import ( + "os" "testing" ) @@ -65,6 +66,28 @@ func TestMergeSameFile(t *testing.T) { compareBytes(t, file.Contents, result.Contents) } +func TestMergeTreesWithoutAncestor(t *testing.T) { + repo := createTestRepo(t) + defer repo.Free() + defer os.RemoveAll(repo.Workdir()) + + _, originalTreeId := seedTestRepo(t, repo) + originalTree, err := repo.LookupTree(originalTreeId) + + checkFatal(t, err) + + _, newTreeId := updateReadme(t, repo, "file changed\n") + + newTree, err := repo.LookupTree(newTreeId) + checkFatal(t, err) + index, err := repo.MergeTrees(nil, originalTree, newTree, nil) + if !index.HasConflicts() { + t.Fatal("expected conflicts in the index") + } + _, err = index.GetConflict("README") + checkFatal(t, err) + +} func compareBytes(t *testing.T, expected, actual []byte) { for i, v := range expected { |
