commit fe96d5b7c71f6d8621bea53c9de1e51470a8f55b
parent 8c1cdb63c5b2b350f54fb351af36b71de6058888
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Mon, 12 Aug 2024 17:26:04 -0700
add some regex tests
Diffstat:
1 file changed, 25 insertions(+), 0 deletions(-)
diff --git a/pkg/web/handlers/interceptors/spamInterceptor_test.go b/pkg/web/handlers/interceptors/spamInterceptor_test.go
@@ -3,6 +3,7 @@ package interceptors
import (
"dkforest/pkg/database"
"github.com/stretchr/testify/assert"
+ "regexp"
"testing"
)
@@ -27,6 +28,30 @@ func Test_autoHellbanCheck(t *testing.T) {
}
}
+func Test_regex(t *testing.T) {
+ type args struct {
+ authUser *database.User
+ lowerCaseMessage string
+ }
+ tests := []struct {
+ name string
+ args args
+ want bool
+ }{
+ {name: "", args: args{authUser: &database.User{GeneralMessagesCount: 2}, lowerCaseMessage: "gore"}, want: true},
+ {name: "", args: args{authUser: &database.User{GeneralMessagesCount: 2}, lowerCaseMessage: "my name is igore"}, want: false},
+ {name: "", args: args{authUser: &database.User{GeneralMessagesCount: 2}, lowerCaseMessage: "you can igore this"}, want: false},
+ {name: "", args: args{authUser: &database.User{GeneralMessagesCount: 2}, lowerCaseMessage: "anyone has gore?"}, want: true},
+ {name: "", args: args{authUser: &database.User{GeneralMessagesCount: 2}, lowerCaseMessage: "I want gore lol"}, want: true},
+ }
+ for _, tt := range tests {
+ rgx := regexp.MustCompile(`\bgore\b`)
+ t.Run(tt.name, func(t *testing.T) {
+ assert.Equalf(t, tt.want, rgx.MatchString(tt.args.lowerCaseMessage), "regex(%v)", tt.args.lowerCaseMessage)
+ })
+ }
+}
+
func Test_autoKickSpammers(t *testing.T) {
type args struct {
authUser *database.User