This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
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)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user