From 2bd574b6bd75a044f526cf882161db08ac3cb633 Mon Sep 17 00:00:00 2001 From: Segev Finer Date: Sat, 14 Nov 2020 02:50:59 +0200 Subject: Add ReferenceNormalizeName (#681) --- reference_test.go | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'reference_test.go') diff --git a/reference_test.go b/reference_test.go index b6721e1..e42db41 100644 --- a/reference_test.go +++ b/reference_test.go @@ -224,6 +224,29 @@ func TestReferenceIsValidName(t *testing.T) { } } +func TestReferenceNormalizeName(t *testing.T) { + t.Parallel() + + ref, err := ReferenceNormalizeName("refs/heads//master", ReferenceFormatNormal) + checkFatal(t, err) + + if ref != "refs/heads/master" { + t.Errorf("ReferenceNormalizeName(%q) = %q; want %q", "refs/heads//master", ref, "refs/heads/master") + } + + ref, err = ReferenceNormalizeName("master", ReferenceFormatAllowOnelevel|ReferenceFormatRefspecShorthand) + checkFatal(t, err) + + if ref != "master" { + t.Errorf("ReferenceNormalizeName(%q) = %q; want %q", "master", ref, "master") + } + + ref, err = ReferenceNormalizeName("foo^", ReferenceFormatNormal) + if !IsErrorCode(err, ErrInvalidSpec) { + t.Errorf("foo^ should be invalid") + } +} + func compareStringList(t *testing.T, expected, actual []string) { for i, v := range expected { if actual[i] != v { -- cgit v1.2.3