summaryrefslogtreecommitdiff
path: root/merge_test.go
diff options
context:
space:
mode:
authorCarlos Martín Nieto <[email protected]>2014-11-09 20:34:56 +0100
committerCarlos Martín Nieto <[email protected]>2014-11-09 20:34:56 +0100
commit61729f5c9365f59db726218cc3d9c450ff26be7b (patch)
tree3281d6e682e26e295f79c75699945bbe7e5b7a0a /merge_test.go
parent98299e65fbf1875a95c631c494dba0763ec543b3 (diff)
parentff65faa082f9eca3239da25277e1eb15bd3ac9ec (diff)
Merge pull request #134 from joseferminj/fix-merge-trees-nil-ancestor
Fix MergeTrees func to accept nil as ancestor parameter
Diffstat (limited to 'merge_test.go')
-rw-r--r--merge_test.go23
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 {