github.com/crosseyed/versionbump@v1.1.0/internal/usage_test.go (about) 1 package internal 2 3 import ( 4 "github.com/stretchr/testify/assert" 5 "testing" 6 ) 7 8 var cmd = "versionbump" 9 10 func TestUsage(t *testing.T) { 11 usage := `Usage: 12 ls [-lart] <file>... 13 ` 14 assert.Equal(t, *Usage(&usage), usage) 15 } 16 17 func TestArgs_List(t *testing.T) { 18 p := "some/fake/verison.txt" 19 cmdList := []string{cmd, "list", p} 20 cliops, err := Args(cmdList[1:], nil, `1.1.0`) 21 if err != nil { 22 assert.Fail(t, "", err) 23 } 24 assert.False(t, cliops.Major) 25 assert.False(t, cliops.Minor) 26 assert.False(t, cliops.Patch) 27 assert.True(t, cliops.List) 28 29 assert.Equal(t, p, cliops.File) 30 } 31 32 func TestArgs_Major(t *testing.T) { 33 p := "some/fake/verison.txt" 34 c := []string{cmd, "major", p} 35 cliops, err := Args(c[1:], nil, `1.1.0`) 36 if err != nil { 37 assert.Fail(t, "", err) 38 } 39 assert.True(t, cliops.Major) 40 assert.False(t, cliops.Minor) 41 assert.False(t, cliops.Patch) 42 assert.False(t, cliops.List) 43 44 assert.Equal(t, p, cliops.File) 45 } 46 47 func TestArgs_Minor(t *testing.T) { 48 p := "some/fake/verison.txt" 49 c := []string{cmd, "minor", p} 50 cliops, err := Args(c[1:], nil, `1.1.0`) 51 if err != nil { 52 assert.Fail(t, "", err) 53 } 54 assert.False(t, cliops.Major) 55 assert.True(t, cliops.Minor) 56 assert.False(t, cliops.Patch) 57 assert.False(t, cliops.List) 58 59 assert.Equal(t, p, cliops.File) 60 } 61 62 func TestArgs_Patch(t *testing.T) { 63 p := "some/fake/verison.txt" 64 c := []string{cmd, "patch", p} 65 cliops, err := Args(c[1:], nil, `1.1.0`) 66 if err != nil { 67 assert.Fail(t, "", err) 68 } 69 assert.False(t, cliops.Major) 70 assert.False(t, cliops.Minor) 71 assert.True(t, cliops.Patch) 72 assert.False(t, cliops.List) 73 74 assert.Equal(t, p, cliops.File) 75 }