diff options
| author | Carlos Martín Nieto <[email protected]> | 2014-10-27 17:42:28 +0100 |
|---|---|---|
| committer | Carlos Martín Nieto <[email protected]> | 2014-10-27 17:42:28 +0100 |
| commit | 9c6db70fc2836b6f5eb56c505f9cc82461b999c3 (patch) | |
| tree | a8e952a5f5fe9eeca236d4290c32da37a9251c03 /remote_test.go | |
| parent | 99d10775d66ffceca36c1fb0b947d8209f5153f8 (diff) | |
| parent | d722c11f7f6eb85d287da6091cdc84d6f8ebe8fa (diff) | |
Merge pull request #127 from calavera/ls_remote
Add Remote#Ls.
Diffstat (limited to 'remote_test.go')
| -rw-r--r-- | remote_test.go | 61 |
1 files changed, 59 insertions, 2 deletions
diff --git a/remote_test.go b/remote_test.go index d1ad1e8..6d81df4 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,61 @@ func TestCertificateCheck(t *testing.T) { err = remote.Fetch([]string{}, nil, "") checkFatal(t, err) } + +func TestRemoteConnect(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) + + err = remote.ConnectFetch() + 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) + + err = remote.ConnectFetch() + 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) + + err = remote.ConnectFetch() + 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") + } +} |
