package publish import ( "reflect" "testing" ) func TestInfoRefsRoundTrip(t *testing.T) { want := map[string]Ref{ "refs/heads/main": {OID: "1111111111111111111111111111111111111111"}, "refs/tags/v1": { OID: "2222222222222222222222222222222222222222", Peeled: "3333333333333333333333333333333333333333", }, } got := map[string]Ref{} if err := parseInfoRefs(renderInfoRefs(want), got); err != nil { t.Fatal(err) } if !reflect.DeepEqual(got, want) { t.Fatalf("got %#v, want %#v", got, want) } } func TestPackListRoundTrip(t *testing.T) { want := map[string]struct{}{ "pack-1111111111111111111111111111111111111111.pack": {}, "pack-2222222222222222222222222222222222222222.pack": {}, } got := map[string]struct{}{} parsePackList(renderPackList(want), got) if !reflect.DeepEqual(got, want) { t.Fatalf("got %#v, want %#v", got, want) } } func TestBranchNames(t *testing.T) { metadata := Metadata{Refs: map[string]Ref{ "refs/heads/topic": {OID: "1111111111111111111111111111111111111111"}, "refs/tags/v1": {OID: "2222222222222222222222222222222222222222"}, "refs/heads/main": {OID: "3333333333333333333333333333333333333333"}, }} want := []string{"main", "topic"} if got := metadata.BranchNames(); !reflect.DeepEqual(got, want) { t.Fatalf("BranchNames() = %#v, want %#v", got, want) } }