...

Source file src/github.com/jedib0t/go-pretty/v6/progress/tracker_sort_test.go

Documentation: github.com/jedib0t/go-pretty/v6/progress

     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