def test_edit_user_username_blank(self, testdir_class, test_utils):
     testdir_class.activate()
     username = test_utils.random_string(5)
     email = test_utils.random_email()
     Users.create_user(username, '123456', email)
     errors = Users.edit_user(username, new_username='')
     assert errors == ['Username cannot be blank']
 def test_edit_user_invalid_email(self, testdir_class, test_utils):
     testdir_class.activate()
     username = test_utils.random_string(5)
     email = test_utils.random_email()
     Users.create_user(username, '123456', email)
     new_email = 'test@'
     errors = Users.edit_user(username, new_email=new_email)
     assert errors == [f'{new_email} is not a valid email address']
 def test_edit_user_new_username_exists(self, testdir_class, test_utils):
     testdir_class.activate()
     username = test_utils.random_string(5)
     Users.create_user(username, '123456')
     new_username = test_utils.random_string(5)
     Users.create_user(new_username, '123456')
     errors = Users.edit_user(username, new_username=new_username)
     assert errors == [f'Username {new_username} already exists']
 def test_edit_user_remove_all_superuser_permissions(
         self, testdir_function):
     """Cannot edit a user and remove superuser permissions if it's
     the only superuser available
     """
     testdir_function.activate()
     assert len(Users.users()) == 1
     Users.create_user('standard', '123456')
     assert len(Users.users()) == 2
     errors = Users.edit_user('admin', new_is_superuser=False)
     assert errors == ['Cannot remove Superuser permission for this user']
 def test_edit_user(self, testdir_class, test_utils):
     testdir_class.activate()
     username = test_utils.random_string(5)
     email = test_utils.random_email()
     Users.create_user(username, '123456', email)
     new_username = test_utils.random_string(5)
     new_email = test_utils.random_email()
     errors = Users.edit_user(username, new_username, new_email)
     assert errors == []
     user = Users.get_user_by_username(new_username)
     assert user.email == new_email
Exemple #6
0
def users_edit():
    old_username = request.json['oldUsername']
    new_username = request.json['newUsername']
    email = request.json['email']
    is_superuser = request.json['isSuperuser']
    project_permissions_raw = request.json['projectPermissions']
    _verify_permissions(Permissions.SUPER_USER)
    project_permissions = {}
    if project_permissions_raw is not None:
        for p in project_permissions_raw:
            project_permissions[p['project']] = p['permission']
    errors = Users.edit_user(old_username, new_username, email, is_superuser, project_permissions)
    return jsonify(errors)
 def test_edit_user_email(self, testdir_class, test_utils):
     testdir_class.activate()
     username = test_utils.random_string(5)
     email = test_utils.random_email()
     Users.create_user(username, '123456', email)
     # Do not edit user email
     Users.edit_user(username, new_email=False)
     assert Users.get_user_by_username(username).email == email
     # '' is converted to None
     Users.edit_user(username, new_email='')
     assert Users.get_user_by_username(username).email is None
     Users.edit_user(username, new_email=email)
     assert Users.get_user_by_username(username).email == email
     # Email is saved as None
     Users.edit_user(username, new_email=None)
     assert Users.get_user_by_username(username).email is None
 def test_edit_user_not_exist(self, testdir_class):
     testdir_class.activate()
     errors = Users.edit_user('username', 'new_username')
     assert errors == ['Username username does not exist']