Test: new modifications in filesystem pkg
This commit is contained in:
@@ -1,6 +1,9 @@
|
||||
package filesystem
|
||||
|
||||
import (
|
||||
"github.com/cloudreve/Cloudreve/v3/pkg/cluster"
|
||||
"github.com/cloudreve/Cloudreve/v3/pkg/filesystem/driver/shadow/masterinslave"
|
||||
"github.com/cloudreve/Cloudreve/v3/pkg/filesystem/driver/shadow/slaveinmaster"
|
||||
"net/http/httptest"
|
||||
|
||||
"github.com/DATA-DOG/go-sqlmock"
|
||||
@@ -104,6 +107,10 @@ func TestDispatchHandler(t *testing.T) {
|
||||
err = fs.DispatchHandler()
|
||||
asserts.NoError(err)
|
||||
|
||||
fs.Policy = &model.Policy{Type: "cos"}
|
||||
err = fs.DispatchHandler()
|
||||
asserts.NoError(err)
|
||||
|
||||
fs.Policy = &model.Policy{Type: "s3"}
|
||||
err = fs.DispatchHandler()
|
||||
asserts.NoError(err)
|
||||
@@ -262,3 +269,40 @@ func TestFileSystem_SetTargetByInterface(t *testing.T) {
|
||||
asserts.Len(fs.FileTarget, 1)
|
||||
}
|
||||
}
|
||||
|
||||
func TestFileSystem_SwitchToSlaveHandler(t *testing.T) {
|
||||
a := assert.New(t)
|
||||
fs := FileSystem{
|
||||
User: &model.User{},
|
||||
}
|
||||
mockNode := &cluster.MasterNode{
|
||||
Model: &model.Node{},
|
||||
}
|
||||
fs.SwitchToSlaveHandler(mockNode)
|
||||
a.IsType(&slaveinmaster.Driver{}, fs.Handler)
|
||||
}
|
||||
|
||||
func TestFileSystem_SwitchToShadowHandler(t *testing.T) {
|
||||
a := assert.New(t)
|
||||
fs := FileSystem{
|
||||
User: &model.User{},
|
||||
Policy: &model.Policy{},
|
||||
}
|
||||
mockNode := &cluster.MasterNode{
|
||||
Model: &model.Node{},
|
||||
}
|
||||
|
||||
// remote to local
|
||||
{
|
||||
fs.Policy.Type = "remote"
|
||||
fs.SwitchToShadowHandler(mockNode, "", "")
|
||||
a.IsType(&masterinslave.Driver{}, fs.Handler)
|
||||
}
|
||||
|
||||
// local to remote
|
||||
{
|
||||
fs.Policy.Type = "local"
|
||||
fs.SwitchToShadowHandler(mockNode, "", "")
|
||||
a.IsType(&masterinslave.Driver{}, fs.Handler)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user