username and password can be quoted (double or single)
This commit is contained in:
@@ -62,7 +62,10 @@ class Registry:
|
|||||||
return (None, None)
|
return (None, None)
|
||||||
|
|
||||||
self.last_error = None
|
self.last_error = None
|
||||||
return login.split(':', 1)
|
(username, password) = login.split(':', 1)
|
||||||
|
username = username.strip('"').strip("'")
|
||||||
|
password = password.strip('"').strip("'")
|
||||||
|
return (username, password)
|
||||||
|
|
||||||
return (None, None)
|
return (None, None)
|
||||||
|
|
||||||
|
|||||||
22
test.py
22
test.py
@@ -42,6 +42,28 @@ class TestParseLogin(unittest.TestCase):
|
|||||||
self.assertEqual(password, None)
|
self.assertEqual(password, None)
|
||||||
self.assertEqual(self.registry.last_error, "Please provide -l in the form USER:PASSWORD")
|
self.assertEqual(self.registry.last_error, "Please provide -l in the form USER:PASSWORD")
|
||||||
|
|
||||||
|
def test_login_args_singlequoted(self):
|
||||||
|
(username, password) = self.registry.parse_login("'username':password")
|
||||||
|
self.assertEqual(username, 'username')
|
||||||
|
self.assertEqual(password, "password")
|
||||||
|
self.assertEqual(self.registry.last_error, None)
|
||||||
|
|
||||||
|
def test_login_args_doublequoted(self):
|
||||||
|
(username, password) = self.registry.parse_login('"username":"password"')
|
||||||
|
self.assertEqual(username, 'username')
|
||||||
|
self.assertEqual(password, "password")
|
||||||
|
self.assertEqual(self.registry.last_error, None)
|
||||||
|
|
||||||
|
def test_login_colon_username(self):
|
||||||
|
"""
|
||||||
|
this is to test that if username contains colon,
|
||||||
|
then the result will be invalid in this case
|
||||||
|
and no error will be printed
|
||||||
|
"""
|
||||||
|
(username, password) = self.registry.parse_login("'user:name':'pass:word'")
|
||||||
|
self.assertEqual(username, 'user')
|
||||||
|
self.assertEqual(password, "name':'pass:word")
|
||||||
|
|
||||||
class TestRegistrySend(unittest.TestCase):
|
class TestRegistrySend(unittest.TestCase):
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
|
|||||||
Reference in New Issue
Block a user