summaryrefslogtreecommitdiff
path: root/remote_test.go
diff options
context:
space:
mode:
authorDavid Calavera <[email protected]>2014-10-24 12:12:07 -0700
committerDavid Calavera <[email protected]>2014-10-24 17:28:10 -0700
commitf6fa1a38abf7be7d4546b736e6db1ae7229e972f (patch)
treee46111b0be8194b5ab35920e0f1fcd7e4330a1c0 /remote_test.go
parent41008af54cfc2af3a5ea56dff169c95d2b50dda6 (diff)
Add Remote#Ls.
Allow filtering heads by name.
Diffstat (limited to 'remote_test.go')
-rw-r--r--remote_test.go43
1 files changed, 41 insertions, 2 deletions
diff --git a/remote_test.go b/remote_test.go
index d1ad1e8..70e53ce 100644
--- a/remote_test.go
+++ b/remote_test.go
@@ -46,7 +46,6 @@ func TestListRemotes(t *testing.T) {
compareStringList(t, expected, actual)
}
-
func assertHostname(cert *Certificate, valid bool, hostname string, t *testing.T) int {
if hostname != "github.com" {
t.Fatal("Hostname does not match")
@@ -65,7 +64,7 @@ func TestCertificateCheck(t *testing.T) {
checkFatal(t, err)
callbacks := RemoteCallbacks{
- CertificateCheckCallback: func (cert *Certificate, valid bool, hostname string) int {
+ CertificateCheckCallback: func(cert *Certificate, valid bool, hostname string) int {
return assertHostname(cert, valid, hostname, t)
},
}
@@ -75,3 +74,43 @@ func TestCertificateCheck(t *testing.T) {
err = remote.Fetch([]string{}, nil, "")
checkFatal(t, err)
}
+
+func TestRemoteLs(t *testing.T) {
+ repo := createTestRepo(t)
+ defer os.RemoveAll(repo.Workdir())
+ defer repo.Free()
+
+ remote, err := repo.CreateRemote("origin", "https://github.com/libgit2/TestGitRepository")
+ checkFatal(t, err)
+
+ heads, err := remote.Ls()
+ checkFatal(t, err)
+
+ if len(heads) == 0 {
+ t.Error("Expected remote heads")
+ }
+}
+
+func TestRemoteLsFiltering(t *testing.T) {
+ repo := createTestRepo(t)
+ defer os.RemoveAll(repo.Workdir())
+ defer repo.Free()
+
+ remote, err := repo.CreateRemote("origin", "https://github.com/libgit2/TestGitRepository")
+ checkFatal(t, err)
+
+ heads, err := remote.Ls("master")
+ checkFatal(t, err)
+
+ if len(heads) != 1 {
+ t.Fatalf("Expected one head for master but I got %d", len(heads))
+ }
+
+ if heads[0].Id == nil {
+ t.Fatalf("Expected head to have an Id, but it's nil")
+ }
+
+ if heads[0].Name == "" {
+ t.Fatalf("Expected head to have a name, but it's empty")
+ }
+}