package common import ( "testing" model "github.com/cloudreve/Cloudreve/v3/models" "github.com/cloudreve/Cloudreve/v3/pkg/aria2/rpc" "github.com/stretchr/testify/assert" ) func TestDummyAria2(t *testing.T) { a := assert.New(t) d := &DummyAria2{} a.NoError(d.Init()) res, err := d.CreateTask(&model.Download{}, map[string]interface{}{}) a.Empty(res) a.Error(err) _, err = d.Status(&model.Download{}) a.Error(err) err = d.Cancel(&model.Download{}) a.Error(err) err = d.Select(&model.Download{}, []int{}) a.Error(err) configRes := d.GetConfig() a.NotNil(configRes) err = d.DeleteTempFile(&model.Download{}) a.Error(err) } func TestGetStatus(t *testing.T) { a := assert.New(t) a.Equal(GetStatus(rpc.StatusInfo{Status: "complete"}), Complete) a.Equal(GetStatus(rpc.StatusInfo{Status: "active", BitTorrent: rpc.BitTorrentInfo{Mode: ""}}), Downloading) a.Equal(GetStatus(rpc.StatusInfo{Status: "active", BitTorrent: rpc.BitTorrentInfo{Mode: "single"}, TotalLength: "100", CompletedLength: "50"}), Downloading) a.Equal(GetStatus(rpc.StatusInfo{Status: "active", BitTorrent: rpc.BitTorrentInfo{Mode: "multi"}, TotalLength: "100", CompletedLength: "100"}), Seeding) a.Equal(GetStatus(rpc.StatusInfo{Status: "waiting"}), Ready) a.Equal(GetStatus(rpc.StatusInfo{Status: "paused"}), Paused) a.Equal(GetStatus(rpc.StatusInfo{Status: "error"}), Error) a.Equal(GetStatus(rpc.StatusInfo{Status: "removed"}), Canceled) a.Equal(GetStatus(rpc.StatusInfo{Status: "unknown"}), Unknown) }