Files
EdgeNode/internal/caches/manager_test.go

126 lines
2.9 KiB
Go
Raw Normal View History

2020-10-04 14:30:42 +08:00
package caches
import (
"github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs"
"github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs/shared"
2020-10-04 14:30:42 +08:00
"github.com/iwind/TeaGo/Tea"
"testing"
)
func TestManager_UpdatePolicies(t *testing.T) {
{
var policies = []*serverconfigs.HTTPCachePolicy{}
2020-10-04 14:30:42 +08:00
SharedManager.UpdatePolicies(policies)
printManager(t)
}
{
var policies = []*serverconfigs.HTTPCachePolicy{
2020-10-04 14:30:42 +08:00
{
Id: 1,
2020-10-05 19:15:35 +08:00
Type: serverconfigs.CachePolicyStorageFile,
2020-10-04 14:30:42 +08:00
Options: map[string]interface{}{
"dir": Tea.Root + "/caches",
},
},
{
Id: 2,
2020-10-05 19:15:35 +08:00
Type: serverconfigs.CachePolicyStorageFile,
2020-10-04 14:30:42 +08:00
Options: map[string]interface{}{
"dir": Tea.Root + "/caches",
},
},
{
Id: 3,
2020-10-05 19:15:35 +08:00
Type: serverconfigs.CachePolicyStorageFile,
2020-10-04 14:30:42 +08:00
Options: map[string]interface{}{
"dir": Tea.Root + "/caches",
},
},
}
SharedManager.UpdatePolicies(policies)
printManager(t)
}
{
var policies = []*serverconfigs.HTTPCachePolicy{
2020-10-04 14:30:42 +08:00
{
Id: 1,
2020-10-05 19:15:35 +08:00
Type: serverconfigs.CachePolicyStorageFile,
2020-10-04 14:30:42 +08:00
Options: map[string]interface{}{
"dir": Tea.Root + "/caches",
},
},
{
Id: 2,
Type: serverconfigs.CachePolicyStorageFile,
2020-10-04 14:30:42 +08:00
Options: map[string]interface{}{
"dir": Tea.Root + "/caches",
},
},
{
Id: 4,
2020-10-05 19:15:35 +08:00
Type: serverconfigs.CachePolicyStorageFile,
2020-10-04 14:30:42 +08:00
Options: map[string]interface{}{
"dir": Tea.Root + "/caches",
},
},
}
SharedManager.UpdatePolicies(policies)
printManager(t)
}
}
func TestManager_ChangePolicy_Memory(t *testing.T) {
var policies = []*serverconfigs.HTTPCachePolicy{
{
Id: 1,
Type: serverconfigs.CachePolicyStorageMemory,
Options: map[string]interface{}{},
Capacity: &shared.SizeCapacity{Count: 1, Unit: shared.SizeCapacityUnitGB},
},
}
SharedManager.UpdatePolicies(policies)
SharedManager.UpdatePolicies([]*serverconfigs.HTTPCachePolicy{
{
Id: 1,
Type: serverconfigs.CachePolicyStorageMemory,
Options: map[string]interface{}{},
Capacity: &shared.SizeCapacity{Count: 2, Unit: shared.SizeCapacityUnitGB},
},
})
}
func TestManager_ChangePolicy_File(t *testing.T) {
var policies = []*serverconfigs.HTTPCachePolicy{
{
Id: 1,
Type: serverconfigs.CachePolicyStorageFile,
Options: map[string]interface{}{
"dir": Tea.Root + "/data/cache-index/p1",
},
Capacity: &shared.SizeCapacity{Count: 1, Unit: shared.SizeCapacityUnitGB},
},
}
SharedManager.UpdatePolicies(policies)
SharedManager.UpdatePolicies([]*serverconfigs.HTTPCachePolicy{
{
Id: 1,
Type: serverconfigs.CachePolicyStorageFile,
Options: map[string]interface{}{
"dir": Tea.Root + "/data/cache-index/p1",
},
Capacity: &shared.SizeCapacity{Count: 2, Unit: shared.SizeCapacityUnitGB},
},
})
}
2020-10-04 14:30:42 +08:00
func printManager(t *testing.T) {
t.Log("===manager==")
t.Log("storage:")
for _, storage := range SharedManager.storageMap {
t.Log(" storage:", storage.Policy().Id)
}
t.Log("===============")
}