c40779224f
Fixes #52
47 lines
589 B
Go
47 lines
589 B
Go
package semver
|
|
|
|
import (
|
|
"reflect"
|
|
"sort"
|
|
"testing"
|
|
)
|
|
|
|
func TestCollection(t *testing.T) {
|
|
raw := []string{
|
|
"1.2.3",
|
|
"1.0",
|
|
"1.3",
|
|
"2",
|
|
"0.4.2",
|
|
}
|
|
|
|
vs := make([]*Version, len(raw))
|
|
for i, r := range raw {
|
|
v, err := NewVersion(r)
|
|
if err != nil {
|
|
t.Errorf("Error parsing version: %s", err)
|
|
}
|
|
|
|
vs[i] = v
|
|
}
|
|
|
|
sort.Sort(Collection(vs))
|
|
|
|
e := []string{
|
|
"0.4.2",
|
|
"1.0.0",
|
|
"1.2.3",
|
|
"1.3.0",
|
|
"2.0.0",
|
|
}
|
|
|
|
a := make([]string, len(vs))
|
|
for i, v := range vs {
|
|
a[i] = v.String()
|
|
}
|
|
|
|
if !reflect.DeepEqual(a, e) {
|
|
t.Error("Sorting Collection failed")
|
|
}
|
|
}
|