32 lines
794 B
Go
32 lines
794 B
Go
|
package version // import nocternity.net/gomonop/pkg/version
|
||
|
|
||
|
import (
|
||
|
"testing"
|
||
|
|
||
|
"github.com/stretchr/testify/assert"
|
||
|
)
|
||
|
|
||
|
func TestVersion(t *testing.T) {
|
||
|
type Test struct {
|
||
|
version, commit, status, target, expected string
|
||
|
}
|
||
|
|
||
|
tests := []Test{
|
||
|
{"", "COMMIT", "clean", "TARGET", "development version (COMMIT) TARGET"},
|
||
|
{"VERSION", "COMMIT", "clean", "TARGET", "VERSION (COMMIT) TARGET"},
|
||
|
{"", "COMMIT", "dirty", "TARGET", "development version (COMMIT*) TARGET"},
|
||
|
{"VERSION", "COMMIT", "dirty", "TARGET", "VERSION (COMMIT*) TARGET"},
|
||
|
}
|
||
|
|
||
|
for _, test := range tests {
|
||
|
version = test.version
|
||
|
commit = test.commit
|
||
|
status = test.status
|
||
|
target = test.target
|
||
|
|
||
|
result := Version()
|
||
|
|
||
|
assert.Equal(t, test.expected, result, "Expected '%s', got '%s'", test.expected, result)
|
||
|
}
|
||
|
}
|