1package semver
2
3import (
4	"reflect"
5	"sort"
6	"testing"
7)
8
9func TestCollection(t *testing.T) {
10	raw := []string{
11		"1.2.3",
12		"1.0",
13		"1.3",
14		"2",
15		"0.4.2",
16	}
17
18	vs := make([]*Version, len(raw))
19	for i, r := range raw {
20		v, err := NewVersion(r)
21		if err != nil {
22			t.Errorf("Error parsing version: %s", err)
23		}
24
25		vs[i] = v
26	}
27
28	sort.Sort(Collection(vs))
29
30	e := []string{
31		"0.4.2",
32		"1.0.0",
33		"1.2.3",
34		"1.3.0",
35		"2.0.0",
36	}
37
38	a := make([]string, len(vs))
39	for i, v := range vs {
40		a[i] = v.String()
41	}
42
43	if !reflect.DeepEqual(a, e) {
44		t.Error("Sorting Collection failed")
45	}
46}
47