php-parser/pkg/version/version_test.go
2023-03-31 16:50:08 +02:00

66 lines
1.2 KiB
Go

package version_test
import (
"testing"
"gotest.tools/assert"
"github.com/laytan/php-parser/pkg/version"
)
func Test(t *testing.T) {
ver, err := version.New("7.4")
assert.NilError(t, err)
assert.Equal(t, *ver, version.Version{
Major: 7,
Minor: 4,
})
}
func TestLeadingZero(t *testing.T) {
ver, err := version.New("07.04")
assert.NilError(t, err)
assert.Equal(t, *ver, version.Version{
Major: 7,
Minor: 4,
})
}
func TestInRange(t *testing.T) {
s, err := version.New("7.0")
assert.NilError(t, err)
e, err := version.New("7.4")
assert.NilError(t, err)
ver, err := version.New("7.0")
assert.NilError(t, err)
assert.Assert(t, ver.InRange(s, e))
ver, err = version.New("7.2")
assert.NilError(t, err)
assert.Assert(t, ver.InRange(s, e))
ver, err = version.New("7.4")
assert.NilError(t, err)
assert.Assert(t, ver.InRange(s, e))
}
func TestInRangePHP8(t *testing.T) {
s, err := version.New("8.0")
assert.NilError(t, err)
e, err := version.New("8.1")
assert.NilError(t, err)
ver, err := version.New("8.0")
assert.NilError(t, err)
assert.Assert(t, ver.InRange(s, e))
ver, err = version.New("8.1")
assert.NilError(t, err)
assert.Assert(t, ver.InRange(s, e))
}