github.com/cloudreve/Cloudreve/v3@v3.0.0-20240224133659-3edb00a6484c/pkg/aria2/common/common_test.go (about) 1 package common 2 3 import ( 4 "testing" 5 6 model "github.com/cloudreve/Cloudreve/v3/models" 7 "github.com/cloudreve/Cloudreve/v3/pkg/aria2/rpc" 8 "github.com/stretchr/testify/assert" 9 ) 10 11 func TestDummyAria2(t *testing.T) { 12 a := assert.New(t) 13 d := &DummyAria2{} 14 15 a.NoError(d.Init()) 16 17 res, err := d.CreateTask(&model.Download{}, map[string]interface{}{}) 18 a.Empty(res) 19 a.Error(err) 20 21 _, err = d.Status(&model.Download{}) 22 a.Error(err) 23 24 err = d.Cancel(&model.Download{}) 25 a.Error(err) 26 27 err = d.Select(&model.Download{}, []int{}) 28 a.Error(err) 29 30 configRes := d.GetConfig() 31 a.NotNil(configRes) 32 33 err = d.DeleteTempFile(&model.Download{}) 34 a.Error(err) 35 } 36 37 func TestGetStatus(t *testing.T) { 38 a := assert.New(t) 39 40 a.Equal(GetStatus(rpc.StatusInfo{Status: "complete"}), Complete) 41 a.Equal(GetStatus(rpc.StatusInfo{Status: "active", 42 BitTorrent: rpc.BitTorrentInfo{Mode: ""}}), Downloading) 43 a.Equal(GetStatus(rpc.StatusInfo{Status: "active", 44 BitTorrent: rpc.BitTorrentInfo{Mode: "single"}, 45 TotalLength: "100", CompletedLength: "50"}), Downloading) 46 a.Equal(GetStatus(rpc.StatusInfo{Status: "active", 47 BitTorrent: rpc.BitTorrentInfo{Mode: "multi"}, 48 TotalLength: "100", CompletedLength: "100"}), Seeding) 49 a.Equal(GetStatus(rpc.StatusInfo{Status: "waiting"}), Ready) 50 a.Equal(GetStatus(rpc.StatusInfo{Status: "paused"}), Paused) 51 a.Equal(GetStatus(rpc.StatusInfo{Status: "error"}), Error) 52 a.Equal(GetStatus(rpc.StatusInfo{Status: "removed"}), Canceled) 53 a.Equal(GetStatus(rpc.StatusInfo{Status: "unknown"}), Unknown) 54 }