Add new username type
Parsing usernames would be a fairly common thing todo from heat metadata, this type allows what would be expected to cover most sane usernames. Change-Id: I3a5577d2c5bef1ce54629a0b99e2dc085d274f02
This commit is contained in:
@@ -143,3 +143,16 @@ class ValueTypeTestCase(testtools.TestCase):
|
||||
value_types.ensure_type,
|
||||
test_swiftdevices,
|
||||
'swiftdevices')
|
||||
|
||||
def test_username(self):
|
||||
for test_username in ['guest', 'guest_13-42']:
|
||||
self.assertEqual(test_username, value_types.ensure_type(
|
||||
test_username,
|
||||
'username'))
|
||||
|
||||
def test_username_bad(self):
|
||||
for test_username in ['guest`ls`', 'guest$PASSWD', 'guest 2']:
|
||||
self.assertRaises(config_exception.ConfigException,
|
||||
value_types.ensure_type,
|
||||
test_username,
|
||||
'username')
|
||||
|
||||
@@ -28,6 +28,7 @@ TYPES = {
|
||||
"(?#/dbname)(/[a-zA-Z0-9_-]+)?"
|
||||
"(?#?variable=value)(\?[a-zA-Z0-9=_-]+)?$",
|
||||
"swiftdevices": "^(r\d+z\d+-[A-Za-z0-9.-_]+:%PORT%/[^,]+,?)+$",
|
||||
"username": "^[A-Za-z0-9_-]+$",
|
||||
"raw": ""
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user