Files
EdgeCommon/pkg/serverconfigs/referers_config_test.go

50 lines
1.4 KiB
Go
Raw Normal View History

2024-07-27 13:29:26 +08:00
// Copyright 2022 GoEdge CDN goedge.cdn@gmail.com. All rights reserved. Official site: https://goedge.cloud .
package serverconfigs_test
import (
2024-07-27 13:29:26 +08:00
"testing"
"github.com/TeaOSLab/EdgeCommon/pkg/serverconfigs"
"github.com/iwind/TeaGo/assert"
)
func TestReferersConfig_MatchDomain(t *testing.T) {
var a = assert.NewAssertion(t)
{
var config = &serverconfigs.ReferersConfig{
IsOn: true,
AllowDomains: []string{},
DenyDomains: []string{"a.com", "b.com"},
}
a.IsTrue(config.MatchDomain("example.com", "c.com"))
a.IsTrue(config.MatchDomain("example.com", "d.com"))
a.IsFalse(config.MatchDomain("example.com", "a.com"))
}
{
var config = &serverconfigs.ReferersConfig{
IsOn: true,
AllowDomains: []string{"c.com", "e.com"},
DenyDomains: []string{"a.com", "b.com", "e.com"},
}
a.IsTrue(config.MatchDomain("example.com", "c.com"))
a.IsFalse(config.MatchDomain("example.com", "d.com"))
a.IsFalse(config.MatchDomain("example.com", "e.com"))
a.IsFalse(config.MatchDomain("example.com", "a.com"))
}
{
var config = &serverconfigs.ReferersConfig{
IsOn: true,
AllowDomains: []string{"c.com", "e.com"},
DenyDomains: []string{},
}
a.IsTrue(config.MatchDomain("example.com", "c.com"))
a.IsFalse(config.MatchDomain("example.com", "d.com"))
a.IsTrue(config.MatchDomain("example.com", "e.com"))
a.IsFalse(config.MatchDomain("example.com", "a.com"))
}
}