diff --git a/rhodecode/tests/functional/test_admin_settings.py b/rhodecode/tests/functional/test_admin_settings.py --- a/rhodecode/tests/functional/test_admin_settings.py +++ b/rhodecode/tests/functional/test_admin_settings.py @@ -3,6 +3,8 @@ from rhodecode.lib.auth import get_crypt_password, check_password from rhodecode.model.db import User, RhodeCodeSetting from rhodecode.tests import * +from rhodecode.lib import helpers as h + class TestAdminSettingsController(TestController): @@ -47,7 +49,6 @@ class TestAdminSettingsController(TestCo response = self.app.get(url('formatted_admin_edit_setting', setting_id=1, format='xml')) - def test_ga_code_active(self): self.log_user() old_title = 'RhodeCode' @@ -92,7 +93,6 @@ class TestAdminSettingsController(TestCo self.assertTrue("""_gaq.push(['_setAccount', '%s']);""" % new_ga_code not in response.body) - def test_title_change(self): self.log_user() old_title = 'RhodeCode' @@ -117,7 +117,6 @@ class TestAdminSettingsController(TestCo self.assertTrue("""

%s

""" % new_title in response.body) - def test_my_account(self): self.log_user() response = self.app.get(url('admin_settings_my_account')) @@ -132,12 +131,11 @@ class TestAdminSettingsController(TestCo new_lastname = 'NewLastname' new_password = 'test123' - response = self.app.post(url('admin_settings_my_account_update'), params=dict(_method='put', username='test_admin', new_password=new_password, - password_confirmation = new_password, + password_confirmation=new_password, password='', name=new_name, lastname=new_lastname, @@ -146,7 +144,7 @@ class TestAdminSettingsController(TestCo assert 'Your account was updated successfully' in response.session['flash'][0][1], 'no flash message about success of change' user = self.Session.query(User).filter(User.username == 'test_admin').one() - assert user.email == new_email , 'incorrect user email after update got %s vs %s' % (user.email, new_email) + assert user.email == new_email, 'incorrect user email after update got %s vs %s' % (user.email, new_email) assert user.name == new_name, 'updated field mismatch %s vs %s' % (user.name, new_name) assert user.lastname == new_lastname, 'updated field mismatch %s vs %s' % (user.lastname, new_lastname) assert check_password(new_password, user.password) is True, 'password field mismatch %s vs %s' % (user.password, new_password) @@ -161,7 +159,7 @@ class TestAdminSettingsController(TestCo _method='put', username='test_admin', new_password=old_password, - password_confirmation = old_password, + password_confirmation=old_password, password='', name=old_name, lastname=old_lastname, @@ -172,41 +170,46 @@ class TestAdminSettingsController(TestCo 'Your account was updated successfully') user = self.Session.query(User).filter(User.username == 'test_admin').one() - assert user.email == old_email , 'incorrect user email after update got %s vs %s' % (user.email, old_email) + assert user.email == old_email, 'incorrect user email after update got %s vs %s' % (user.email, old_email) - assert user.email == old_email , 'incorrect user email after update got %s vs %s' % (user.email, old_email) + assert user.email == old_email, 'incorrect user email after update got %s vs %s' % (user.email, old_email) assert user.name == old_name, 'updated field mismatch %s vs %s' % (user.name, old_name) assert user.lastname == old_lastname, 'updated field mismatch %s vs %s' % (user.lastname, old_lastname) - assert check_password(old_password, user.password) is True , 'password updated field mismatch %s vs %s' % (user.password, old_password) - + assert check_password(old_password, user.password) is True, 'password updated field mismatch %s vs %s' % (user.password, old_password) def test_my_account_update_err_email_exists(self): self.log_user() - new_email = 'test_regular@mail.com'#already exisitn email + new_email = 'test_regular@mail.com' # already exisitn email response = self.app.post(url('admin_settings_my_account_update'), params=dict( _method='put', username='test_admin', new_password='test12', - password_confirmation = 'test122', + password_confirmation='test122', name='NewName', lastname='NewLastname', email=new_email,)) assert 'This e-mail address is already taken' in response.body, 'Missing error message about existing email' - def test_my_account_update_err(self): self.log_user('test_regular2', 'test12') new_email = 'newmail.pl' - response = self.app.post(url('admin_settings_my_account_update'), params=dict( - _method='put', - username='test_admin', - new_password='test12', - password_confirmation = 'test122', - name='NewName', - lastname='NewLastname', - email=new_email,)) - assert 'An email address must contain a single @' in response.body, 'Missing error message about wrong email' - assert 'This username already exists' in response.body, 'Missing error message about existing user' + response = self.app.post(url('admin_settings_my_account_update'), + params=dict( + _method='put', + username='test_admin', + new_password='test12', + password_confirmation='test122', + name='NewName', + lastname='NewLastname', + email=new_email,) + ) + + response.mustcontain('An email address must contain a single @') + from rhodecode.model import validators + msg = validators.ValidUsername(edit=False, + old_data={})._messages['username_exists'] + msg = h.html_escape(msg % {'username': 'test_admin'}) + response.mustcontain(u"%s" % msg)