Skip to content
Snippets Groups Projects
Commit 846c22aa authored by Josh Brooks's avatar Josh Brooks
Browse files

Fix pipeline

parent 0d27253c
No related branches found
No related tags found
3 merge requests!50Revert "update deps",!48Release,!45Flatten username for banned user map
...@@ -10,7 +10,7 @@ package banned ...@@ -10,7 +10,7 @@ package banned
import ( import (
"github.com/pkg/errors" "github.com/pkg/errors"
jww "github.com/spf13/jwalterweatherman" jww "github.com/spf13/jwalterweatherman"
"gitlab.com/elixxir/user-discovery-bot/io" "gitlab.com/elixxir/user-discovery-bot/validation"
"regexp" "regexp"
"strings" "strings"
"testing" "testing"
...@@ -42,7 +42,7 @@ func NewManager(bannedUserFile, bannedRegexFile string) (*Manager, error) { ...@@ -42,7 +42,7 @@ func NewManager(bannedUserFile, bannedRegexFile string) (*Manager, error) {
if bannedUser == "" { // Skip any empty lines if bannedUser == "" { // Skip any empty lines
continue continue
} }
bannedUsers[io.Canonicalize(bannedUser)] = struct{}{} bannedUsers[validation.Canonicalize(bannedUser)] = struct{}{}
} }
} }
......
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
package banned package banned
import ( import (
"gitlab.com/elixxir/user-discovery-bot/validation"
"reflect" "reflect"
"regexp" "regexp"
"testing" "testing"
...@@ -16,8 +17,8 @@ import ( ...@@ -16,8 +17,8 @@ import (
func TestNewManager(t *testing.T) { func TestNewManager(t *testing.T) {
expectedManager := &Manager{ expectedManager := &Manager{
bannedUserList: map[string]struct{}{ bannedUserList: map[string]struct{}{
"Privategrity": {}, "privategrity": {},
"Privategrity_Corp": {}, "privategrity_corp": {},
}, },
bannedRegexList: []*regexp.Regexp{ bannedRegexList: []*regexp.Regexp{
regexp.MustCompile("xx"), regexp.MustCompile("xx"),
...@@ -90,7 +91,7 @@ func TestManager_IsBanned_BadUsername(t *testing.T) { ...@@ -90,7 +91,7 @@ func TestManager_IsBanned_BadUsername(t *testing.T) {
} }
for _, badUsername := range badUsernames { for _, badUsername := range badUsernames {
if !m.IsBanned(badUsername) { if !m.IsBanned(validation.Canonicalize(badUsername)) {
t.Errorf("Username %q was not recognized as banned when it should be", badUsername) t.Errorf("Username %q was not recognized as banned when it should be", badUsername)
} }
......
...@@ -16,6 +16,7 @@ import ( ...@@ -16,6 +16,7 @@ import (
"gitlab.com/elixxir/primitives/fact" "gitlab.com/elixxir/primitives/fact"
"gitlab.com/elixxir/user-discovery-bot/banned" "gitlab.com/elixxir/user-discovery-bot/banned"
"gitlab.com/elixxir/user-discovery-bot/storage" "gitlab.com/elixxir/user-discovery-bot/storage"
"gitlab.com/elixxir/user-discovery-bot/validation"
"gitlab.com/xx_network/comms/messages" "gitlab.com/xx_network/comms/messages"
"gitlab.com/xx_network/crypto/signature/rsa" "gitlab.com/xx_network/crypto/signature/rsa"
"gitlab.com/xx_network/primitives/id" "gitlab.com/xx_network/primitives/id"
...@@ -41,10 +42,10 @@ func registerUser(msg *pb.UDBUserRegistration, permPublicKey *rsa.PublicKey, ...@@ -41,10 +42,10 @@ func registerUser(msg *pb.UDBUserRegistration, permPublicKey *rsa.PublicKey,
"Please try again") "Please try again")
} }
canonicalUsername := Canonicalize(username) canonicalUsername := validation.Canonicalize(username)
// Check if username is valid // Check if username is valid
if err := isValidUsername(canonicalUsername); err != nil { if err := validation.IsValidUsername(canonicalUsername); err != nil {
return nil, errors.Errorf("Username %q is invalid: %v", username, err) return nil, errors.Errorf("Username %q is invalid: %v", username, err)
} }
......
...@@ -17,6 +17,7 @@ import ( ...@@ -17,6 +17,7 @@ import (
"gitlab.com/elixxir/primitives/fact" "gitlab.com/elixxir/primitives/fact"
"gitlab.com/elixxir/user-discovery-bot/banned" "gitlab.com/elixxir/user-discovery-bot/banned"
"gitlab.com/elixxir/user-discovery-bot/storage" "gitlab.com/elixxir/user-discovery-bot/storage"
"gitlab.com/elixxir/user-discovery-bot/validation"
"gitlab.com/xx_network/crypto/signature/rsa" "gitlab.com/xx_network/crypto/signature/rsa"
"gitlab.com/xx_network/crypto/tls" "gitlab.com/xx_network/crypto/tls"
"gitlab.com/xx_network/primitives/id" "gitlab.com/xx_network/primitives/id"
...@@ -192,7 +193,7 @@ func TestRegisterUser_Banned(t *testing.T) { ...@@ -192,7 +193,7 @@ func TestRegisterUser_Banned(t *testing.T) {
t.FailNow() t.FailNow()
} }
bannedManager, err := banned.NewManager(Canonicalize(registerMsg.IdentityRegistration.Username), "") bannedManager, err := banned.NewManager(validation.Canonicalize(registerMsg.IdentityRegistration.Username), "")
if err != nil { if err != nil {
t.Fatalf("Failed to construct ban manager: %v", err) t.Fatalf("Failed to construct ban manager: %v", err)
} }
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
// All rights reserved. / // All rights reserved. /
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
package io package validation
import ( import (
"github.com/pkg/errors" "github.com/pkg/errors"
...@@ -27,10 +27,10 @@ const ( ...@@ -27,10 +27,10 @@ const (
// Furthermore, the regex enforces usernames to begin and end with an alphanumeric character. // Furthermore, the regex enforces usernames to begin and end with an alphanumeric character.
var usernameRegex = regexp.MustCompile("^[a-zA-Z0-9][a-zA-Z0-9_\\-+@.#]*[a-zA-Z0-9]$") var usernameRegex = regexp.MustCompile("^[a-zA-Z0-9][a-zA-Z0-9_\\-+@.#]*[a-zA-Z0-9]$")
// isValidUsername determines whether the username is of an acceptable length and // IsValidUsername determines whether the username is of an acceptable length and
// whether it contains allowed character. The allowed characters are defined // whether it contains allowed character. The allowed characters are defined
// by usernameRegex. // by usernameRegex.
func isValidUsername(username string) error { func IsValidUsername(username string) error {
// Check for acceptable length // Check for acceptable length
if len(username) < minimumUsernameLength || len(username) > maximumUsernameLength { if len(username) < minimumUsernameLength || len(username) > maximumUsernameLength {
return errors.Errorf("username length %d is not between %d and %d", return errors.Errorf("username length %d is not between %d and %d",
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
// All rights reserved. / // All rights reserved. /
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
package io package validation
import "testing" import "testing"
...@@ -23,9 +23,9 @@ func TestIsValidUsername_GoodUsernames(t *testing.T) { ...@@ -23,9 +23,9 @@ func TestIsValidUsername_GoodUsernames(t *testing.T) {
// Test whether every good username is valid // Test whether every good username is valid
for _, goodUsername := range goodUsernames { for _, goodUsername := range goodUsernames {
err := isValidUsername(goodUsername) err := IsValidUsername(goodUsername)
if err != nil { // If invalid, fail test if err != nil { // If invalid, fail test
t.Errorf("isValidUsername failed with username %q: %v", goodUsername, err) t.Errorf("IsValidUsername failed with username %q: %v", goodUsername, err)
} }
} }
...@@ -51,9 +51,9 @@ func TestIsValidUsername_BadUsernames(t *testing.T) { ...@@ -51,9 +51,9 @@ func TestIsValidUsername_BadUsernames(t *testing.T) {
// Test if every bad username is invalid // Test if every bad username is invalid
for _, badUsername := range badUsernames { for _, badUsername := range badUsernames {
err := isValidUsername(badUsername) err := IsValidUsername(badUsername)
if err == nil { // If considered valid, fail test if err == nil { // If considered valid, fail test
t.Errorf("isValidUsername did not fail with username %q", badUsername) t.Errorf("IsValidUsername did not fail with username %q", badUsername)
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment