From ff65faa082f9eca3239da25277e1eb15bd3ac9ec Mon Sep 17 00:00:00 2001 From: joseferminj Date: Sat, 8 Nov 2014 19:07:21 -0500 Subject: Fix MergeTrees func to accept nil as ancestor parameter --- merge_test.go | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'merge_test.go') 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" ) @@ -64,6 +65,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) { -- cgit v1.2.3