Files
jabba/semver/version_test.go
2017-02-27 21:34:25 -08:00

30 lines
668 B
Go

package semver
import (
"reflect"
"sort"
"testing"
)
func TestSort(t *testing.T) {
actual := asVersionSlice(t,
"0.2.0", "a@1.8.10", "b@1.8.2", "0.1.20", "a@1.8.2", "0.1.10", "0.1.2")
sort.Sort(sort.Reverse(VersionSlice(actual)))
expected := asVersionSlice(t,
"0.2.0", "0.1.20", "0.1.10", "0.1.2", "a@1.8.10", "a@1.8.2", "b@1.8.2")
if !reflect.DeepEqual(actual, expected) {
t.Fatalf("actual: %v != expected: %v", actual, expected)
}
}
func asVersionSlice(t *testing.T, slice ...string) (r []*Version) {
for _, value := range slice {
ver, err := ParseVersion(value)
if err != nil {
t.Fatalf("err: %v", err)
}
r = append(r, ver)
}
return
}