Make sure to test for unicode usernames, since the collate on the username field is latin1

This commit is contained in:
Joseph Schorr 2015-05-07 18:13:45 -04:00
parent 76bef38d71
commit 7b35555776
2 changed files with 12 additions and 0 deletions

View file

@ -792,6 +792,12 @@ def get_matching_users(username_prefix, robot_namespace=None,
def verify_user(username_or_email, password):
# Make sure we didn't get any unicode for the username.
try:
str(username_or_email)
except ValueError:
return None
try:
fetched = User.get((User.username == username_or_email) |
(User.email == username_or_email))

View file

@ -470,6 +470,12 @@ class TestCreateNewUser(ApiTestCase):
self.assertInTeam(json, NEW_USER_DETAILS['username'])
class TestSignin(ApiTestCase):
def test_signin_unicode(self):
self.postResponse(Signin, data=dict(username=u'\xe5\x8c\x97\xe4\xba\xac\xe5\xb8\x82',
password='password'), expected_code=403)
class TestSignout(ApiTestCase):
def test_signout(self):
self.login(READ_ACCESS_USER)