Add more thorough tests for updates

This commit is contained in:
David Dworken
2023-10-09 21:41:30 -07:00
parent 82a5e2fced
commit f0dbcd6e3b
7 changed files with 204 additions and 111 deletions

48
shared/version_test.go Normal file
View File

@ -0,0 +1,48 @@
package shared
import (
"testing"
"github.com/stretchr/testify/require"
)
func TestParseVersionString(t *testing.T) {
p, err := ParseVersionString("v0.200")
require.NoError(t, err)
require.Equal(t, ParsedVersion{MajorVersion: 0, MinorVersion: 200}, p)
p, err = ParseVersionString("v1.200")
require.NoError(t, err)
require.Equal(t, ParsedVersion{MajorVersion: 1, MinorVersion: 200}, p)
p, err = ParseVersionString("v1.0")
require.NoError(t, err)
require.Equal(t, ParsedVersion{MajorVersion: 1, MinorVersion: 0}, p)
p, err = ParseVersionString("v0.216")
require.NoError(t, err)
require.Equal(t, ParsedVersion{MajorVersion: 0, MinorVersion: 216}, p)
p, err = ParseVersionString("v123.456")
require.NoError(t, err)
require.Equal(t, ParsedVersion{MajorVersion: 123, MinorVersion: 456}, p)
}
func TestVersionLessThan(t *testing.T) {
require.False(t, ParsedVersion{0, 200}.LessThan(ParsedVersion{0, 200}))
require.False(t, ParsedVersion{1, 200}.LessThan(ParsedVersion{1, 200}))
require.False(t, ParsedVersion{0, 201}.LessThan(ParsedVersion{0, 200}))
require.False(t, ParsedVersion{1, 0}.LessThan(ParsedVersion{0, 200}))
require.True(t, ParsedVersion{0, 199}.LessThan(ParsedVersion{0, 200}))
require.True(t, ParsedVersion{0, 200}.LessThan(ParsedVersion{0, 205}))
require.True(t, ParsedVersion{1, 200}.LessThan(ParsedVersion{1, 205}))
require.True(t, ParsedVersion{0, 200}.LessThan(ParsedVersion{1, 1}))
}
func TestVersionGreaterThan(t *testing.T) {
require.False(t, ParsedVersion{0, 200}.GreaterThan(ParsedVersion{0, 200}))
require.False(t, ParsedVersion{1, 200}.GreaterThan(ParsedVersion{1, 200}))
require.True(t, ParsedVersion{0, 201}.GreaterThan(ParsedVersion{0, 200}))
require.True(t, ParsedVersion{1, 0}.GreaterThan(ParsedVersion{0, 200}))
require.True(t, ParsedVersion{1, 1}.GreaterThan(ParsedVersion{1, 0}))
require.False(t, ParsedVersion{0, 199}.GreaterThan(ParsedVersion{0, 200}))
require.False(t, ParsedVersion{0, 200}.GreaterThan(ParsedVersion{0, 205}))
require.False(t, ParsedVersion{1, 200}.GreaterThan(ParsedVersion{1, 205}))
require.False(t, ParsedVersion{0, 200}.GreaterThan(ParsedVersion{1, 1}))
}