github.com/goreleaser/goreleaser@v1.25.1/internal/client/config_test.go (about) 1 package client 2 3 import ( 4 "fmt" 5 "testing" 6 7 "github.com/goreleaser/goreleaser/pkg/config" 8 "github.com/stretchr/testify/require" 9 ) 10 11 func TestRepoFromRef(t *testing.T) { 12 owner := "someowner" 13 name := "somename" 14 branch := "somebranch" 15 token := "sometoken" 16 17 ref := config.RepoRef{ 18 Owner: owner, 19 Name: name, 20 Branch: branch, 21 Token: token, 22 } 23 repo := RepoFromRef(ref) 24 25 require.Equal(t, owner, repo.Owner) 26 require.Equal(t, name, repo.Name) 27 require.Equal(t, branch, repo.Branch) 28 } 29 30 func TestTemplateRef(t *testing.T) { 31 expected := config.RepoRef{ 32 Owner: "owner", 33 Name: "name", 34 Branch: "branch", 35 Token: "token", 36 Git: config.GitRepoRef{ 37 URL: "giturl", 38 SSHCommand: "gitsshcommand", 39 PrivateKey: "privatekey", 40 }, 41 } 42 t.Run("success", func(t *testing.T) { 43 ref, err := TemplateRef(func(s string) (string, error) { 44 if s == "token" { 45 return "", fmt.Errorf("nope") 46 } 47 return s, nil 48 }, expected) 49 require.NoError(t, err) 50 require.Equal(t, expected, ref) 51 }) 52 53 t.Run("fail owner", func(t *testing.T) { 54 _, err := TemplateRef(func(s string) (string, error) { 55 if s == "token" || s == "owner" { 56 return "", fmt.Errorf("nope") 57 } 58 return s, nil 59 }, expected) 60 require.Error(t, err) 61 }) 62 t.Run("fail name", func(t *testing.T) { 63 _, err := TemplateRef(func(s string) (string, error) { 64 if s == "token" || s == "name" { 65 return "", fmt.Errorf("nope") 66 } 67 return s, nil 68 }, expected) 69 require.Error(t, err) 70 }) 71 t.Run("fail branch", func(t *testing.T) { 72 _, err := TemplateRef(func(s string) (string, error) { 73 if s == "token" || s == "branch" { 74 return "", fmt.Errorf("nope") 75 } 76 return s, nil 77 }, expected) 78 require.Error(t, err) 79 }) 80 t.Run("fail giturl", func(t *testing.T) { 81 _, err := TemplateRef(func(s string) (string, error) { 82 if s == "token" || s == "giturl" { 83 return "", fmt.Errorf("nope") 84 } 85 return s, nil 86 }, expected) 87 require.Error(t, err) 88 }) 89 t.Run("fail privatekey", func(t *testing.T) { 90 _, err := TemplateRef(func(s string) (string, error) { 91 if s == "token" || s == "privatekey" { 92 return "", fmt.Errorf("nope") 93 } 94 return s, nil 95 }, expected) 96 require.Error(t, err) 97 }) 98 }