aboutsummaryrefslogtreecommitdiff
path: root/lib/anubis_test.go
diff options
context:
space:
mode:
authorXe Iaso <me@xeiaso.net>2025-04-20 20:09:27 -0400
committerGitHub <noreply@github.com>2025-04-21 00:09:27 +0000
commitd40b5cfdab11c62dc2ed226bde32b19ea7107f21 (patch)
tree2c997fd907c0de22e98b1ab6dc233141e10567e1 /lib/anubis_test.go
parent022eb59ff337427ae4fe151fd1f24ec411418479 (diff)
downloadanubis-d40b5cfdab11c62dc2ed226bde32b19ea7107f21.tar.xz
anubis-d40b5cfdab11c62dc2ed226bde32b19ea7107f21.zip
lib: move config to yaml (#307)
* lib: move config to yaml Signed-off-by: Xe Iaso <me@xeiaso.net> * web: run go generate Signed-off-by: Xe Iaso <me@xeiaso.net> * Add Haiku to known instances (#304) Signed-off-by: Asmodeus <46908100+AsmodeumX@users.noreply.github.com> * Add headers bot rule (#300) * Closes #291: add headers support to bot policy rules * Fix config validator * update docs for JSON -> YAML Signed-off-by: Xe Iaso <me@xeiaso.net> * docs: document http header based actions Signed-off-by: Xe Iaso <me@xeiaso.net> * lib: add missing test Signed-off-by: Xe Iaso <me@xeiaso.net> * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: Xe Iaso <me@xeiaso.net> --------- Signed-off-by: Xe Iaso <me@xeiaso.net> Signed-off-by: Asmodeus <46908100+AsmodeumX@users.noreply.github.com> Co-authored-by: Asmodeus <46908100+AsmodeumX@users.noreply.github.com> Co-authored-by: Neur0toxine <pashok9825@gmail.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Diffstat (limited to 'lib/anubis_test.go')
-rw-r--r--lib/anubis_test.go19
1 files changed, 18 insertions, 1 deletions
diff --git a/lib/anubis_test.go b/lib/anubis_test.go
index 156863d..60b7913 100644
--- a/lib/anubis_test.go
+++ b/lib/anubis_test.go
@@ -8,6 +8,7 @@ import (
"testing"
"github.com/TecharoHQ/anubis"
+ "github.com/TecharoHQ/anubis/data"
"github.com/TecharoHQ/anubis/internal"
"github.com/TecharoHQ/anubis/lib/policy"
)
@@ -15,7 +16,7 @@ import (
func loadPolicies(t *testing.T, fname string) *policy.ParsedConfig {
t.Helper()
- anubisPolicy, err := LoadPoliciesOrDefault("", anubis.DefaultDifficulty)
+ anubisPolicy, err := LoadPoliciesOrDefault(fname, anubis.DefaultDifficulty)
if err != nil {
t.Fatal(err)
}
@@ -55,6 +56,22 @@ func makeChallenge(t *testing.T, ts *httptest.Server) challenge {
return chall
}
+func TestLoadPolicies(t *testing.T) {
+ for _, fname := range []string{"botPolicies.json", "botPolicies.yaml"} {
+ t.Run(fname, func(t *testing.T) {
+ fin, err := data.BotPolicies.Open(fname)
+ if err != nil {
+ t.Fatal(err)
+ }
+ defer fin.Close()
+
+ if _, err := policy.ParseConfig(fin, fname, 4); err != nil {
+ t.Fatal(err)
+ }
+ })
+ }
+}
+
// Regression test for CVE-2025-24369
func TestCVE2025_24369(t *testing.T) {
pol := loadPolicies(t, "")