summaryrefslogtreecommitdiff
path: root/object_test.go
diff options
context:
space:
mode:
authorCarlos Martín Nieto <[email protected]>2015-08-04 14:47:10 +0200
committerCarlos Martín Nieto <[email protected]>2015-08-04 14:47:10 +0200
commitb7159b0cd4b25ee3b1a8eb9e0d4991d297487a36 (patch)
tree0228b23ba724935ed417f4d3bf151fe4e28e2ae2 /object_test.go
parent5d989f2caddad21d0296cd9a6a83cabce88858d5 (diff)
Move from an Object interface to a type
An Object should be about representing a libgit2 object rather than showing which methods it should support. Change any return of Object to *Object and provide methods to convert between this and the particular type.
Diffstat (limited to 'object_test.go')
-rw-r--r--object_test.go24
1 files changed, 12 insertions, 12 deletions
diff --git a/object_test.go b/object_test.go
index ef6c5a1..2ae2a6a 100644
--- a/object_test.go
+++ b/object_test.go
@@ -10,12 +10,12 @@ func TestObjectPoymorphism(t *testing.T) {
commitId, treeId := seedTestRepo(t, repo)
- var obj Object
+ var obj *Object
commit, err := repo.LookupCommit(commitId)
checkFatal(t, err)
- obj = commit
+ obj = &commit.Object
if obj.Type() != ObjectCommit {
t.Fatalf("Wrong object type, expected commit, have %v", obj.Type())
}
@@ -27,13 +27,13 @@ func TestObjectPoymorphism(t *testing.T) {
tree, err := repo.LookupTree(treeId)
checkFatal(t, err)
- obj = tree
+ obj = &tree.Object
if obj.Type() != ObjectTree {
t.Fatalf("Wrong object type, expected tree, have %v", obj.Type())
}
- tree2, ok := obj.(*Tree)
- if !ok {
+ tree2, err := obj.AsTree()
+ if err != nil {
t.Fatalf("Converting back to *Tree is not ok")
}
@@ -46,16 +46,16 @@ func TestObjectPoymorphism(t *testing.T) {
t.Fatal("Wrong filemode for \"README\"")
}
- _, ok = obj.(*Commit)
- if ok {
+ _, err = obj.AsCommit()
+ if err == nil {
t.Fatalf("*Tree is somehow the same as *Commit")
}
obj, err = repo.Lookup(tree.Id())
checkFatal(t, err)
- _, ok = obj.(*Tree)
- if !ok {
+ _, err = obj.AsTree()
+ if err != nil {
t.Fatalf("Lookup creates the wrong type")
}
@@ -99,8 +99,8 @@ func TestObjectOwner(t *testing.T) {
tree, err := repo.LookupTree(treeId)
checkFatal(t, err)
- checkOwner(t, repo, commit)
- checkOwner(t, repo, tree)
+ checkOwner(t, repo, commit.Object)
+ checkOwner(t, repo, tree.Object)
}
func TestObjectPeel(t *testing.T) {
@@ -109,7 +109,7 @@ func TestObjectPeel(t *testing.T) {
commitID, treeID := seedTestRepo(t, repo)
- var obj Object
+ var obj *Object
commit, err := repo.LookupCommit(commitID)
checkFatal(t, err)