Files
revel-cmd/model/version_test.go
Paul Tötterman 3d924a016b Lint fixes
2020-10-19 13:40:52 +03:00

36 lines
985 B
Go

package model_test
import (
"testing"
"github.com/revel/cmd/model"
"github.com/stretchr/testify/assert"
)
var versionTests = [][]string{
{"v0.20.0-dev", "v0.20.0-dev"},
{"v0.20-dev", "v0.20.0-dev"},
{"v0.20.", "v0.20.0"},
{"2.0", "2.0.0"},
}
// Test that the event handler can be attached and it dispatches the event received.
func TestVersion(t *testing.T) {
for _, v := range versionTests {
p, e := model.ParseVersion(v[0])
assert.Nil(t, e, "Should have parsed %s", v)
assert.Equal(t, p.String(), v[1], "Should be equal %s==%s", p.String(), v)
}
}
// test the ranges.
func TestVersionRange(t *testing.T) {
a, _ := model.ParseVersion("0.1.2")
b, _ := model.ParseVersion("0.2.1")
c, _ := model.ParseVersion("1.0.1")
assert.True(t, b.MinorNewer(a), "B is newer then A")
assert.False(t, b.MajorNewer(a), "B is not major newer then A")
assert.False(t, b.MajorNewer(c), "B is not major newer then A")
assert.True(t, c.MajorNewer(b), "C is major newer then b")
}