2014-03-12 17:49:11 -05:00
|
|
|
package git
|
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
)
|
|
|
|
|
2014-03-19 02:19:02 -05:00
|
|
|
func TestBranchIterator(t *testing.T) {
|
2014-03-12 17:49:11 -05:00
|
|
|
|
|
|
|
repo := createTestRepo(t)
|
|
|
|
seedTestRepo(t, repo)
|
|
|
|
|
|
|
|
i, err := repo.NewBranchIterator(BranchLocal)
|
|
|
|
checkFatal(t, err)
|
|
|
|
|
|
|
|
ref, err := i.Next()
|
|
|
|
checkFatal(t, err)
|
|
|
|
if ref.Name() != "refs/heads/master" {
|
|
|
|
t.Fatalf("expected refs/heads/master, not %v", ref.Name())
|
|
|
|
}
|
|
|
|
ref, err = i.Next()
|
|
|
|
if ref != nil {
|
|
|
|
t.Fatal("expected nil")
|
|
|
|
}
|
|
|
|
|
|
|
|
if err != ErrIterOver {
|
|
|
|
t.Fatal("expected iterover")
|
|
|
|
}
|
2014-03-19 02:19:02 -05:00
|
|
|
|
|
|
|
// test channel iterator
|
|
|
|
|
|
|
|
i, err = repo.NewBranchIterator(BranchLocal)
|
|
|
|
checkFatal(t, err)
|
|
|
|
|
|
|
|
list := make([]string, 0)
|
|
|
|
for ref := range ReferenceNameIteratorChannel(i) {
|
|
|
|
list = append(list, ref)
|
|
|
|
}
|
|
|
|
|
|
|
|
if len(list) != 1 {
|
|
|
|
t.Fatal("expected single match")
|
|
|
|
}
|
|
|
|
|
|
|
|
if list[0] != "refs/heads/master" {
|
|
|
|
t.Fatal("expected refs/heads/master")
|
|
|
|
}
|
|
|
|
|
2014-03-12 17:49:11 -05:00
|
|
|
}
|