1package multierror
2
3import (
4	"errors"
5	"reflect"
6	"sort"
7	"testing"
8)
9
10func TestSortSingle(t *testing.T) {
11	errFoo := errors.New("foo")
12
13	expected := []error{
14		errFoo,
15	}
16
17	err := &Error{
18		Errors: []error{
19			errFoo,
20		},
21	}
22
23	sort.Sort(err)
24	if !reflect.DeepEqual(err.Errors, expected) {
25		t.Fatalf("bad: %#v", err)
26	}
27}
28
29func TestSortMultiple(t *testing.T) {
30	errBar := errors.New("bar")
31	errBaz := errors.New("baz")
32	errFoo := errors.New("foo")
33
34	expected := []error{
35		errBar,
36		errBaz,
37		errFoo,
38	}
39
40	err := &Error{
41		Errors: []error{
42			errFoo,
43			errBar,
44			errBaz,
45		},
46	}
47
48	sort.Sort(err)
49	if !reflect.DeepEqual(err.Errors, expected) {
50		t.Fatalf("bad: %#v", err)
51	}
52}
53