github.com/amane3/goreleaser@v0.182.0/internal/pipe/project/project_test.go (about) 1 package project 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/require" 7 8 "github.com/amane3/goreleaser/pkg/config" 9 "github.com/amane3/goreleaser/pkg/context" 10 ) 11 12 func TestCustomProjectName(t *testing.T) { 13 var ctx = context.New(config.Project{ 14 ProjectName: "foo", 15 Release: config.Release{ 16 GitHub: config.Repo{ 17 Owner: "bar", 18 Name: "bar", 19 }, 20 }, 21 }) 22 require.NoError(t, Pipe{}.Default(ctx)) 23 require.Equal(t, "foo", ctx.Config.ProjectName) 24 } 25 26 func TestEmptyProjectName_DefaultsToGitHubRelease(t *testing.T) { 27 var ctx = context.New(config.Project{ 28 Release: config.Release{ 29 GitHub: config.Repo{ 30 Owner: "bar", 31 Name: "bar", 32 }, 33 }, 34 }) 35 require.NoError(t, Pipe{}.Default(ctx)) 36 require.Equal(t, "bar", ctx.Config.ProjectName) 37 } 38 39 func TestEmptyProjectName_DefaultsToGitLabRelease(t *testing.T) { 40 var ctx = context.New(config.Project{ 41 Release: config.Release{ 42 GitLab: config.Repo{ 43 Owner: "bar", 44 Name: "bar", 45 }, 46 }, 47 }) 48 require.NoError(t, Pipe{}.Default(ctx)) 49 require.Equal(t, "bar", ctx.Config.ProjectName) 50 } 51 52 func TestEmptyProjectName_DefaultsToGiteaRelease(t *testing.T) { 53 var ctx = context.New(config.Project{ 54 Release: config.Release{ 55 Gitea: config.Repo{ 56 Owner: "bar", 57 Name: "bar", 58 }, 59 }, 60 }) 61 require.NoError(t, Pipe{}.Default(ctx)) 62 require.Equal(t, "bar", ctx.Config.ProjectName) 63 } 64 65 func TestEmptyProjectNameAndRelease(t *testing.T) { 66 var ctx = context.New(config.Project{ 67 Release: config.Release{ 68 GitHub: config.Repo{}, 69 }, 70 }) 71 require.EqualError(t, Pipe{}.Default(ctx), "couldn't guess project_name, please add it to your config") 72 }