Test: get filesystem from callback context

This commit is contained in:
HFO4
2020-01-22 14:41:12 +08:00
parent 8672042d61
commit 588514b4e0
3 changed files with 125 additions and 1 deletions

View File

@@ -4,6 +4,7 @@ import (
"encoding/json"
"github.com/DATA-DOG/go-sqlmock"
"github.com/HFO4/cloudreve/pkg/cache"
"github.com/jinzhu/gorm"
"github.com/stretchr/testify/assert"
"strconv"
"testing"
@@ -196,3 +197,37 @@ func TestPolicy_IsPathGenerateNeeded(t *testing.T) {
policy.Type = "remote"
asserts.False(policy.IsPathGenerateNeeded())
}
func TestPolicy_ClearCache(t *testing.T) {
asserts := assert.New(t)
cache.Set("policy_202", 1, 0)
policy := Policy{Model: gorm.Model{ID: 202}}
policy.ClearCache()
_, ok := cache.Get("policy_202")
asserts.False(ok)
}
func TestPolicy_UpdateAccessKey(t *testing.T) {
asserts := assert.New(t)
policy := Policy{Model: gorm.Model{ID: 202}}
mock.ExpectBegin()
mock.ExpectExec("UPDATE(.+)").WillReturnResult(sqlmock.NewResult(1, 1))
mock.ExpectCommit()
err := policy.UpdateAccessKey("123")
asserts.NoError(mock.ExpectationsWereMet())
asserts.NoError(err)
}
func TestPolicy_Props(t *testing.T) {
asserts := assert.New(t)
policy := Policy{Type: "onedrive"}
asserts.True(policy.IsMockThumbNeeded())
asserts.False(policy.IsThumbGenerateNeeded())
asserts.True(policy.IsPathGenerateNeeded())
asserts.True(policy.IsTransitUpload(4))
asserts.False(policy.IsTransitUpload(5 * 1024 * 1024))
policy.Type = "local"
asserts.False(policy.IsMockThumbNeeded())
asserts.True(policy.IsThumbGenerateNeeded())
asserts.True(policy.IsPathGenerateNeeded())
}