...
1 package version
2
3 import (
4 "reflect"
5 "sort"
6 "testing"
7 )
8
9 func TestCollection(t *testing.T) {
10 versionsRaw := []string{
11 "1.1.1",
12 "1.0",
13 "1.2",
14 "2",
15 "0.7.1",
16 }
17
18 versions := make([]*Version, len(versionsRaw))
19 for i, raw := range versionsRaw {
20 v, err := NewVersion(raw)
21 if err != nil {
22 t.Fatalf("err: %s", err)
23 }
24
25 versions[i] = v
26 }
27
28 sort.Sort(Collection(versions))
29
30 actual := make([]string, len(versions))
31 for i, v := range versions {
32 actual[i] = v.String()
33 }
34
35 expected := []string{
36 "0.7.1",
37 "1.0.0",
38 "1.1.1",
39 "1.2.0",
40 "2.0.0",
41 }
42
43 if !reflect.DeepEqual(actual, expected) {
44 t.Fatalf("bad: %#v", actual)
45 }
46 }
47
View as plain text