Files

34 lines
759 B
Go
Raw Permalink Normal View History

package updater
import "testing"
func TestCompareVersions(t *testing.T) {
cases := []struct {
left string
right string
want int
}{
{"1.2.20", "1.2.19", 1},
{"v1.2.19", "1.2.20", -1},
{"1.3.0", "1.3.0", 0},
{"1.2.21-beta.1", "1.2.21", 0},
}
for _, tc := range cases {
got := CompareVersions(tc.left, tc.right)
if got != tc.want {
t.Fatalf("CompareVersions(%q, %q) = %d, want %d", tc.left, tc.right, got, tc.want)
}
}
}
func TestValidateSemver(t *testing.T) {
if err := validateSemver("1.2.21"); err != nil {
t.Fatalf("合法版本被拒绝: %v", err)
}
for _, value := range []string{"", "1.2", "main", "1.2.x"} {
if err := validateSemver(value); err == nil {
t.Fatalf("非法版本未被拒绝: %q", value)
}
}
}