1
0
mirror of https://github.com/goreleaser/goreleaser.git synced 2025-11-06 09:09:29 +02:00

test: simplify error asserts with require.ErrorContains (#4640)

The PR refactors tests:
- change two lines `require.Error + require.Contains` with one
`require.ErrorContains`;
- change `require.Error + require.Equal` with `require.EqualError`.
This commit is contained in:
Oleksandr Redko
2024-02-19 21:28:06 +02:00
committed by GitHub
parent ef90821ee7
commit 305663fb5d
18 changed files with 27 additions and 61 deletions

View File

@@ -964,8 +964,7 @@ func TestRunPipeSameArchiveFilename(t *testing.T) {
ctx.Version = "0.0.1"
ctx.Git.CurrentTag = "v0.0.1"
err = Pipe{}.Run(ctx)
require.Error(t, err)
require.Contains(t, err.Error(), "same-filename.tar.gz already exists. Check your archive name template")
require.ErrorContains(t, err, "same-filename.tar.gz already exists. Check your archive name template")
}
func TestDuplicateFilesInsideArchive(t *testing.T) {

View File

@@ -418,8 +418,7 @@ func TestRunPipe_BadCredentials(t *testing.T) {
require.NoError(t, Pipe{}.Default(ctx))
err := Pipe{}.Publish(ctx)
require.Error(t, err)
require.Contains(t, err.Error(), "Bad credentials")
require.ErrorContains(t, err, "Bad credentials")
}
func TestRunPipe_UnparsableErrorResponse(t *testing.T) {

View File

@@ -67,7 +67,7 @@ func TestRunPipeFail(t *testing.T) {
},
)
err := Pipe{}.Run(ctx)
require.Contains(t, err.Error(), "hook failed")
require.ErrorContains(t, err, "hook failed")
}
}

View File

@@ -214,7 +214,7 @@ func TestRunPipeFailingHooks(t *testing.T) {
err := Pipe{}.Run(ctx)
require.ErrorIs(t, err, exec.ErrNotFound)
require.Contains(t, err.Error(), "pre hook failed")
require.ErrorContains(t, err, "pre hook failed")
})
t.Run("post-hook", func(t *testing.T) {
ctx := testctx.NewWithCfg(cfg, testctx.WithCurrentTag("2.4.5"))
@@ -222,7 +222,7 @@ func TestRunPipeFailingHooks(t *testing.T) {
ctx.Config.Builds[0].Hooks.Post = []config.Hook{{Cmd: "exit 1"}}
err := Pipe{}.Run(ctx)
require.ErrorIs(t, err, exec.ErrNotFound)
require.Contains(t, err.Error(), "post hook failed")
require.ErrorContains(t, err, "post hook failed")
})
t.Run("post-hook-skip", func(t *testing.T) {
@@ -766,6 +766,6 @@ func TestRunHookFailWithLogs(t *testing.T) {
}
ctx := testctx.NewWithCfg(config, testctx.WithCurrentTag("2.4.5"))
err := Pipe{}.Run(ctx)
require.Contains(t, err.Error(), "pre hook failed")
require.ErrorContains(t, err, "pre hook failed")
require.Empty(t, ctx.Artifacts.List())
}

View File

@@ -39,8 +39,7 @@ func TestRunPipe(t *testing.T) {
shouldErr := func(msg string) errChecker {
return func(t *testing.T, err error) {
t.Helper()
require.Error(t, err)
require.Contains(t, err.Error(), msg)
require.ErrorContains(t, err, msg)
}
}
shouldNotErr := func(t *testing.T, err error) {

View File

@@ -187,7 +187,7 @@ func TestEmptyGithubEnvFile(t *testing.T) {
})
err = Pipe{}.Run(ctx)
require.ErrorIs(t, err, syscall.EACCES)
require.Contains(t, err.Error(), "failed to load github token")
require.ErrorContains(t, err, "failed to load github token")
}
func TestEmptyGitlabEnvFile(t *testing.T) {
@@ -202,7 +202,7 @@ func TestEmptyGitlabEnvFile(t *testing.T) {
})
err = Pipe{}.Run(ctx)
require.ErrorIs(t, err, syscall.EACCES)
require.Contains(t, err.Error(), "failed to load gitlab token")
require.ErrorContains(t, err, "failed to load gitlab token")
}
func TestEmptyGiteaEnvFile(t *testing.T) {
@@ -217,7 +217,7 @@ func TestEmptyGiteaEnvFile(t *testing.T) {
})
err = Pipe{}.Run(ctx)
require.ErrorIs(t, err, syscall.EACCES)
require.Contains(t, err.Error(), "failed to load gitea token")
require.ErrorContains(t, err, "failed to load gitea token")
}
func TestInvalidEnvChecksSkipped(t *testing.T) {

View File

@@ -109,8 +109,7 @@ func TestDirty(t *testing.T) {
require.NoError(t, os.WriteFile(dummy.Name(), []byte("lorem ipsum"), 0o644))
t.Run("all checks up", func(t *testing.T) {
err := Pipe{}.Run(testctx.New())
require.Error(t, err)
require.Contains(t, err.Error(), "git is in a dirty state")
require.ErrorContains(t, err, "git is in a dirty state")
})
t.Run("skip validate is set", func(t *testing.T) {
ctx := testctx.New(testctx.Skip(skips.Validate))
@@ -218,8 +217,7 @@ func TestTagIsNotLastCommit(t *testing.T) {
testlib.GitCommit(t, "commit4")
ctx := testctx.New()
err := Pipe{}.Run(ctx)
require.Error(t, err)
require.Contains(t, err.Error(), "git tag v0.0.1 was not made against commit")
require.ErrorContains(t, err, "git tag v0.0.1 was not made against commit")
require.Contains(t, ctx.Git.Summary, "v0.0.1-1-g") // commit not represented because it changes every test
}

View File

@@ -456,8 +456,7 @@ func TestPublishPipeError(t *testing.T) {
ctx.Config.Kos[0].CreationTime = "nope"
require.NoError(t, Pipe{}.Default(ctx))
err := Pipe{}.Publish(ctx)
require.Error(t, err)
require.Contains(t, err.Error(), `strconv.ParseInt: parsing "nope": invalid syntax`)
require.ErrorContains(t, err, `strconv.ParseInt: parsing "nope": invalid syntax`)
})
t.Run("invalid creation time tmpl", func(t *testing.T) {
@@ -472,8 +471,7 @@ func TestPublishPipeError(t *testing.T) {
ctx.Config.Kos[0].KoDataCreationTime = "nope"
require.NoError(t, Pipe{}.Default(ctx))
err := Pipe{}.Publish(ctx)
require.Error(t, err)
require.Contains(t, err.Error(), `strconv.ParseInt: parsing "nope": invalid syntax`)
require.ErrorContains(t, err, `strconv.ParseInt: parsing "nope": invalid syntax`)
})
t.Run("invalid kodata creation time tmpl", func(t *testing.T) {

View File

@@ -10,8 +10,7 @@ import (
func TestSkipPipe(t *testing.T) {
reason := "this is a test"
err := Skip(reason)
require.Error(t, err)
require.Equal(t, reason, err.Error())
require.EqualError(t, err, reason)
}
func TestIsSkip(t *testing.T) {

View File

@@ -525,8 +525,7 @@ func testSBOMCataloging(
// run the pipeline
if expectedErrMsg != "" {
err := Pipe{}.Run(ctx)
require.Error(tb, err)
require.Contains(tb, err.Error(), expectedErrMsg)
require.ErrorContains(tb, err, expectedErrMsg)
return
}
if expectedErrAs != nil {

View File

@@ -26,6 +26,5 @@ func TestValidSemver(t *testing.T) {
func TestInvalidSemver(t *testing.T) {
ctx := testctx.New(testctx.WithCurrentTag("aaaav1.5.2-rc1"))
err := Pipe{}.Run(ctx)
require.Error(t, err)
require.Contains(t, err.Error(), "failed to parse tag 'aaaav1.5.2-rc1' as semver")
require.ErrorContains(t, err, "failed to parse tag 'aaaav1.5.2-rc1' as semver")
}

View File

@@ -650,8 +650,7 @@ func testSign(
// run the pipeline
if expectedErrMsg != "" {
require.Error(tb, err)
require.Contains(tb, err.Error(), expectedErrMsg)
require.ErrorContains(tb, err, expectedErrMsg)
return
}

View File

@@ -530,7 +530,7 @@ func TestPublish(t *testing.T) {
},
})
err := Pipe{}.Publish(ctx)
require.Contains(t, err.Error(), "failed to push nope.snap package")
require.ErrorContains(t, err, "failed to push nope.snap package")
}
func TestDefaultSet(t *testing.T) {

View File

@@ -318,7 +318,7 @@ func TestRun(t *testing.T) {
ctx.Config.UniversalBinaries[0].Hooks.Post = []config.Hook{{Cmd: "echo post"}}
err := Pipe{}.Run(ctx)
require.ErrorIs(t, err, exec.ErrNotFound)
require.Contains(t, err.Error(), "pre hook failed")
require.ErrorContains(t, err, "pre hook failed")
})
t.Run("failing post-hook", func(t *testing.T) {
@@ -327,7 +327,7 @@ func TestRun(t *testing.T) {
ctx.Config.UniversalBinaries[0].Hooks.Post = []config.Hook{{Cmd: "exit 1"}}
err := Pipe{}.Run(ctx)
require.ErrorIs(t, err, exec.ErrNotFound)
require.Contains(t, err.Error(), "post hook failed")
require.ErrorContains(t, err, "post hook failed")
})
t.Run("skipping post-hook", func(t *testing.T) {

View File

@@ -442,8 +442,7 @@ func TestRunPipe_BadCredentials(t *testing.T) {
})
err := Pipe{}.Publish(ctx)
require.Error(t, err)
require.Contains(t, err.Error(), "Unauthorized")
require.ErrorContains(t, err, "Unauthorized")
}
func TestRunPipe_FileNotFound(t *testing.T) {