1 package progress
2
3 import (
4 "testing"
5
6 "github.com/stretchr/testify/assert"
7 )
8
9 func TestSortBy(t *testing.T) {
10 trackers := []*Tracker{
11 {Message: "Downloading File # 2", Total: 1000, value: 300},
12 {Message: "Downloading File # 1", Total: 1000, value: 100},
13 {Message: "Downloading File # 3", Total: 1000, value: 500},
14 }
15
16 SortByNone.Sort(trackers)
17 assert.Equal(t, "Downloading File # 2", trackers[0].Message)
18 assert.Equal(t, "Downloading File # 1", trackers[1].Message)
19 assert.Equal(t, "Downloading File # 3", trackers[2].Message)
20
21 SortByMessage.Sort(trackers)
22 assert.Equal(t, "Downloading File # 1", trackers[0].Message)
23 assert.Equal(t, "Downloading File # 2", trackers[1].Message)
24 assert.Equal(t, "Downloading File # 3", trackers[2].Message)
25
26 SortByMessageDsc.Sort(trackers)
27 assert.Equal(t, "Downloading File # 3", trackers[0].Message)
28 assert.Equal(t, "Downloading File # 2", trackers[1].Message)
29 assert.Equal(t, "Downloading File # 1", trackers[2].Message)
30
31 SortByPercent.Sort(trackers)
32 assert.Equal(t, "Downloading File # 1", trackers[0].Message)
33 assert.Equal(t, "Downloading File # 2", trackers[1].Message)
34 assert.Equal(t, "Downloading File # 3", trackers[2].Message)
35
36 SortByPercentDsc.Sort(trackers)
37 assert.Equal(t, "Downloading File # 3", trackers[0].Message)
38 assert.Equal(t, "Downloading File # 2", trackers[1].Message)
39 assert.Equal(t, "Downloading File # 1", trackers[2].Message)
40
41 SortByValue.Sort(trackers)
42 assert.Equal(t, "Downloading File # 1", trackers[0].Message)
43 assert.Equal(t, "Downloading File # 2", trackers[1].Message)
44 assert.Equal(t, "Downloading File # 3", trackers[2].Message)
45
46 SortByValueDsc.Sort(trackers)
47 assert.Equal(t, "Downloading File # 3", trackers[0].Message)
48 assert.Equal(t, "Downloading File # 2", trackers[1].Message)
49 assert.Equal(t, "Downloading File # 1", trackers[2].Message)
50 }
51
View as plain text