mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-06-01 12:00:36 -04:00
Allow underscores in SMS senders
This commit is contained in:
@@ -46,7 +46,7 @@ from app.main.validators import (
|
||||
Blacklist,
|
||||
CsvFileValidator,
|
||||
DoesNotStartWithDoubleZero,
|
||||
LettersNumbersAndFullStopsOnly,
|
||||
LettersNumbersFullStopsAndUnderscoresOnly,
|
||||
MustContainAlphanumericCharacters,
|
||||
NoCommasInPlaceHolders,
|
||||
NoEmbeddedImagesInSVG,
|
||||
@@ -1086,7 +1086,7 @@ class ServiceSmsSenderForm(StripWhitespaceForm):
|
||||
DataRequired(message="Cannot be empty"),
|
||||
Length(max=11, message="Enter 11 characters or fewer"),
|
||||
Length(min=4, message="Enter 4 characters or more"),
|
||||
LettersNumbersAndFullStopsOnly(),
|
||||
LettersNumbersFullStopsAndUnderscoresOnly(),
|
||||
DoesNotStartWithDoubleZero(),
|
||||
]
|
||||
)
|
||||
|
||||
@@ -103,9 +103,9 @@ class OnlySMSCharacters:
|
||||
)
|
||||
|
||||
|
||||
class LettersNumbersAndFullStopsOnly:
|
||||
class LettersNumbersFullStopsAndUnderscoresOnly:
|
||||
|
||||
regex = re.compile(r'^[a-zA-Z0-9\s\.]+$')
|
||||
regex = re.compile(r'^[a-zA-Z0-9\s\._]+$')
|
||||
|
||||
def __init__(self, message='Use letters and numbers only'):
|
||||
self.message = message
|
||||
|
||||
@@ -215,6 +215,16 @@ def test_sms_sender_form_validation(
|
||||
form.validate()
|
||||
assert 'Use letters and numbers only' == form.errors['sms_sender'][0]
|
||||
|
||||
# Underscores are allowed
|
||||
form.sms_sender.data = 'UK_GOV'
|
||||
form.validate()
|
||||
assert not form.errors
|
||||
|
||||
# Full stops are allowed
|
||||
form.sms_sender.data = 'UK.GOV'
|
||||
form.validate()
|
||||
assert not form.errors
|
||||
|
||||
form.sms_sender.data = '333'
|
||||
form.validate()
|
||||
assert 'Enter 4 characters or more' == form.errors['sms_sender'][0]
|
||||
|
||||
Reference in New Issue
Block a user