github.com/mlmmr/revel-cmd@v0.21.2-0.20191112133115-68d8795776dd/model/version_test.go (about) 1 package model_test 2 3 import ( 4 "github.com/stretchr/testify/assert" 5 "testing" 6 "github.com/mlmmr/revel-cmd/model" 7 ) 8 9 var versionTests = [][]string{ 10 {"v0.20.0-dev", "v0.20.0-dev"}, 11 {"v0.20-dev", "v0.20.0-dev"}, 12 {"v0.20.", "v0.20.0"}, 13 {"2.0", "2.0.0"}, 14 } 15 // Test that the event handler can be attached and it dispatches the event received 16 func TestVersion(t *testing.T) { 17 for _, v:= range versionTests { 18 p,e:=model.ParseVersion(v[0]) 19 assert.Nil(t,e,"Should have parsed %s",v) 20 assert.Equal(t,p.String(),v[1], "Should be equal %s==%s",p.String(),v) 21 } 22 } 23 24 // test the ranges 25 func TestVersionRange(t *testing.T) { 26 a,_ := model.ParseVersion("0.1.2") 27 b,_ := model.ParseVersion("0.2.1") 28 c,_ := model.ParseVersion("1.0.1") 29 assert.True(t, b.MinorNewer(a), "B is newer then A") 30 assert.False(t, b.MajorNewer(a), "B is not major newer then A") 31 assert.False(t, b.MajorNewer(c), "B is not major newer then A") 32 assert.True(t, c.MajorNewer(b), "C is major newer then b") 33 }