diff options
| author | Max Resnick <max@ofmax.li> | 2023-12-09 22:52:00 -0800 |
|---|---|---|
| committer | Max Resnick <max@ofmax.li> | 2023-12-09 22:52:00 -0800 |
| commit | 397e118d646ccb3e7522153780fc96bf0b25dccf (patch) | |
| tree | 1c4eb3a48b3cc04d9848d42541dd5c72eec05743 /main_test.go | |
| parent | 0fef771016b2f14d389ee58fe6a12c9626109642 (diff) | |
| download | go-bumpver-397e118d646ccb3e7522153780fc96bf0b25dccf.tar.gz | |
chore: added more tests
Diffstat (limited to '')
| -rw-r--r-- | main_test.go | 65 |
1 files changed, 62 insertions, 3 deletions
diff --git a/main_test.go b/main_test.go index e333064..ba321b1 100644 --- a/main_test.go +++ b/main_test.go @@ -3,6 +3,7 @@ package main import ( "bytes" "log" + "strings" "testing" "github.com/Masterminds/semver/v3" @@ -10,6 +11,7 @@ import ( "github.com/go-git/go-git/v5" "github.com/go-git/go-git/v5/plumbing" "github.com/go-git/go-git/v5/storage/filesystem" + "github.com/spf13/viper" ) var ( @@ -70,13 +72,70 @@ func TestCmd(t *testing.T) { output: "2.0.0", isError: nil, }, + { + name: "major bump new prerelease", + input: "major --prerelease --key-args PR_NUM=11", + prior: "1.2.1", + output: "2.0.0-PR.11.0", + isError: nil, + }, + { + name: "major bump existing prerelease bump", + input: "major --prerelease --key-args PR_NUM=11", + prior: "2.0.0-PR.11.0", + output: "2.0.0-PR.11.1", + isError: nil, + }, + { + name: "minor bump new prerelease", + input: "minor --prerelease --key-args PR_NUM=11", + prior: "1.2.1", + output: "1.3.0-PR.11.0", + isError: nil, + }, + { + name: "minor bump existing prerelease bump", + input: "minor --prerelease --key-args PR_NUM=11", + prior: "1.3.0-PR.11.0", + output: "1.3.0-PR.11.1", + isError: nil, + }, + { + name: "patch bump new prerelease", + input: "patch --prerelease --key-args PR_NUM=11", + prior: "1.2.1", + output: "1.2.2-PR.11.0", + isError: nil, + }, + { + name: "patch bump existing prerelease bump", + input: "patch --prerelease --key-args PR_NUM=11", + prior: "1.2.2-PR.11.0", + output: "1.2.2-PR.11.1", + isError: nil, + }, + { + name: "patch bump different fmt", + input: "patch --prerelease --prerelease-fmt NOTME.$BumpInt", + prior: "1.2.3", + output: "1.2.4-NOTME.0", + isError: nil, + }, + { + name: "patch bump existing different fmt", + input: "patch --prerelease --prerelease-fmt NOTME.$BumpInt", + prior: "1.2.4-NOTME.0", + output: "1.2.4-NOTME.1", + isError: nil, + }, } for _, test := range tests { t.Run(test.name, func(t *testing.T) { logOut := &bytes.Buffer{} - repoDir = t.TempDir() + repoDir := t.TempDir() testRepo := newRepo(repoDir) + viper.Set("repo-dir", repoDir) wt, _ := testRepo.Worktree() hash, err := makeCommit(wt) if err != nil { @@ -88,12 +147,12 @@ func TestCmd(t *testing.T) { t.Fatal(err) } - rootCmd.SetArgs([]string{test.input}) + rootCmd.SetArgs(strings.Split(test.input, " ")) rootCmd.SetOut(logOut) rootCmd.SetErr(logOut) result := rootCmd.Execute() if result != test.isError { - t.Fatal("didn't expect this") + t.Fatalf("didn't expect %s", result) } out := logOut.String() t.Logf("stuff %s", out) |