Merge pull request #70 from jezell/add-remote-list
Add git_remote_list + test
This commit is contained in:
commit
b869775665
12
remote.go
12
remote.go
|
@ -132,6 +132,18 @@ func (r *Remote) Free() {
|
||||||
C.git_remote_free(r.ptr)
|
C.git_remote_free(r.ptr)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (repo *Repository) ListRemotes() ([]string, error) {
|
||||||
|
var r C.git_strarray
|
||||||
|
ecode := C.git_remote_list(&r, repo.ptr)
|
||||||
|
if ecode < 0 {
|
||||||
|
return nil, MakeGitError(ecode)
|
||||||
|
}
|
||||||
|
defer C.git_strarray_free(&r)
|
||||||
|
|
||||||
|
remotes := makeStringsFromCStrings(r.strings, int(r.count))
|
||||||
|
return remotes, nil
|
||||||
|
}
|
||||||
|
|
||||||
func (repo *Repository) CreateRemote(name string, url string) (*Remote, error) {
|
func (repo *Repository) CreateRemote(name string, url string) (*Remote, error) {
|
||||||
remote := &Remote{}
|
remote := &Remote{}
|
||||||
|
|
||||||
|
|
|
@ -8,6 +8,7 @@ import (
|
||||||
func TestRefspecs(t *testing.T) {
|
func TestRefspecs(t *testing.T) {
|
||||||
repo := createTestRepo(t)
|
repo := createTestRepo(t)
|
||||||
defer os.RemoveAll(repo.Workdir())
|
defer os.RemoveAll(repo.Workdir())
|
||||||
|
defer repo.Free()
|
||||||
|
|
||||||
remote, err := repo.CreateRemoteInMemory("refs/heads/*:refs/heads/*", "git://foo/bar")
|
remote, err := repo.CreateRemoteInMemory("refs/heads/*:refs/heads/*", "git://foo/bar")
|
||||||
checkFatal(t, err)
|
checkFatal(t, err)
|
||||||
|
@ -25,3 +26,22 @@ func TestRefspecs(t *testing.T) {
|
||||||
|
|
||||||
compareStringList(t, expected, actual)
|
compareStringList(t, expected, actual)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestListRemotes(t *testing.T) {
|
||||||
|
repo := createTestRepo(t)
|
||||||
|
defer os.RemoveAll(repo.Workdir())
|
||||||
|
defer repo.Free()
|
||||||
|
|
||||||
|
_, err := repo.CreateRemote("test", "git://foo/bar")
|
||||||
|
|
||||||
|
checkFatal(t, err)
|
||||||
|
|
||||||
|
expected := []string{
|
||||||
|
"test",
|
||||||
|
}
|
||||||
|
|
||||||
|
actual, err := repo.ListRemotes()
|
||||||
|
checkFatal(t, err)
|
||||||
|
|
||||||
|
compareStringList(t, expected, actual)
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue