Example #1
0
def test_edit_user_invalid_email(data):
    username = actions.random_str()
    users.create_new_user(username, '123456', '*****@*****.**')
    invalid_email = 'test@test'
    response = users.edit_user(username, new_email=invalid_email)
    assert response.status_code == 200
    assert response.json() == ['{} is not a valid email address'.format(invalid_email)]
Example #2
0
def test_edit_user_existing_username(data):
    username1 = actions.random_str()
    username2 = actions.random_str()
    users.create_new_user(username1, '123456')
    users.create_new_user(username2, '123456')
    response = users.edit_user(username1, new_username=username2)
    assert response.status_code == 200
    assert response.json() == ['Username {} already exists'.format(username2)]
Example #3
0
def test_delete_user(data):
    username = actions.random_str()
    users.create_new_user(username, '123456', '*****@*****.**')
    response = users.delete_user(username)
    assert response.status_code == 200
    assert response.json() == {'errors': []}
    response = users.get_user(username)
    assert response.json() is None
Example #4
0
def test_edit_user_convert_to_superuser(data):
    username = actions.random_str()
    users.create_new_user(username, '123456', '*****@*****.**')
    response = users.get_user(username)
    assert response.json()['is_superuser'] is False

    users.edit_user(username, new_is_superuser=True)
    response = users.get_user(username)
    assert response.json()['is_superuser'] is True
Example #5
0
def create_random_user(project_permissions=None):
    username = actions.random_str()
    password = actions.random_str()
    permissions = [{
        'project': pp[0],
        'permission': pp[1]
    } for pp in project_permissions]
    users.create_new_user(username, password, project_permissions=permissions)
    return {'username': username, 'password': password}
Example #6
0
def test_reset_user_password(data):
    username = actions.random_str()
    users.create_new_user(username, '123456', '*****@*****.**')
    new_password = '******'
    response = users.reset_password(username, new_password)
    assert response.status_code == 200
    assert response.json() == {'errors': []}
    response = auth.get_token_request(username, new_password)
    assert response.status_code == 200
Example #7
0
def test(data):
    username = actions.random_str()
    users.create_new_user(username, '123456', '*****@*****.**')
    new_username = actions.random_str()
    users.edit_user(username, new_username=new_username)
    response = users.get_user(new_username)
    assert response.json()['username'] == new_username
    assert response.json()['email'] == '*****@*****.**'
    users.edit_user(new_username, new_email='*****@*****.**')
    response = users.get_user(new_username)
    assert response.json()['username'] == new_username
    assert response.json()['email'] == '*****@*****.**'
Example #8
0
def test_edit_user(data):
    username = actions.random_str()
    users.create_new_user(username, '123456', '*****@*****.**')
    new_username = actions.random_str()
    new_email = '*****@*****.**'
    new_project_permissions = [{'project': "projectname", 'permission': "admin"}]
    response = users.edit_user(username, new_username, new_email, False, new_project_permissions)
    assert response.status_code == 200
    response = users.get_user(new_username)
    assert response.json()['username'] == new_username
    assert response.json()['email'] == new_email
    assert response.json()['is_superuser'] is False
    assert response.json()['projects'] == {'projectname': 'admin'}
Example #9
0
def create_user_if(username):
    """Create a user if it does not exist.
    username should be `project__permission`
    """
    password = '******'
    split_ = username.split('__')
    if len(split_) != 2:
        raise Exception('Expected username to be "project__permission"')
    if not user_exists(username):
        project = split_[0]
        permission = split_[1]
        project_page.create_project_if(project)
        permissions = [{'project': project, 'permission': permission}]
        users.create_new_user(username,
                              password,
                              project_permissions=permissions)
    return {'username': username, 'password': password}
Example #10
0
def test_new_superuser(data):
    username = actions.random_str()
    password = actions.random_str()
    is_superuser = True
    project_permissions = []
    response = users.create_new_user(username, password, '', is_superuser,
                                     project_permissions)
    assert response.status_code == 200
    response = users.get_user(username)
    assert response.json()['username'] == username
    assert response.json()['email'] is None
    assert response.json()['is_superuser'] is True
    assert response.json()['projects'] == {}
Example #11
0
def create_user_if(username):
    """Create a user if it does not exist.
    username should be `project__permission`
    eg: 'project_name__read-only'
    """
    password = '******'
    split_ = username.split('__')
    if len(split_) != 2:
        raise Exception('Expected username to be "project__permission"')
    if not user_exists(username):
        project = split_[0]
        permission = split_[1]
        if permission not in [
                'super-user', 'admin', 'standard', 'read-only', 'reports-only'
        ]:
            raise Exception('Invalid permission: {}'.format(permission))
        project_page.create_project_if(project)
        permissions = [{'project': project, 'permission': permission}]
        users.create_new_user(username,
                              password,
                              project_permissions=permissions)
    return {'username': username, 'password': password}
Example #12
0
def test_new_user_with_project_permissions(data):
    username = actions.random_str()
    password = '******'
    is_superuser = False
    project_permissions = [{'project': "projectname", 'permission': "admin"}]
    response = users.create_new_user(username, password, '', is_superuser,
                                     project_permissions)
    assert response.status_code == 200
    assert response.json() == []
    response = users.get_user(username)
    assert response.json()['username'] == username
    assert response.json()['email'] is None
    assert response.json()['is_superuser'] is False
    assert response.json()['projects'] == {'projectname': 'admin'}
Example #13
0
def test_reset_user_password_blank(data):
    username = actions.random_str()
    users.create_new_user(username, '123456', '*****@*****.**')
    response = users.reset_password(username, '')
    assert response.status_code == 200
    assert response.json() == {'errors': ['Password cannot be blank']}
Example #14
0
def test_new_user_blank_username(data):
    response = users.create_new_user('', actions.random_str())
    assert response.status_code == 200
    assert response.json() == ['Username cannot be blank']
Example #15
0
def test_new_user_invalid_email(data):
    email = 'invalid@email'
    response = users.create_new_user(actions.random_str(), '123456', email)
    assert response.status_code == 200
    assert response.json() == ['{} is not a valid email address'.format(email)]
Example #16
0
def test_new_user_blank_password(data):
    response = users.create_new_user(actions.random_str(), '')
    assert response.status_code == 200
    assert response.json() == ['Password cannot be blank']
Example #17
0
def test_new_user_already_exists(data):
    username = actions.random_str()
    users.create_new_user(username, '123456')
    response = users.create_new_user(username, '123456')
    assert response.status_code == 200
    assert response.json() == ['Username {} already exists'.format(username)]
def setup(data):
    actions.store('username1', actions.random_str())
    actions.store('username2', actions.random_str())
    users.create_new_user(data.username1, '123456')
    users.create_new_user(data.username2, '123456')
Example #19
0
def test_edit_user_blank_username(data):
    username = actions.random_str()
    users.create_new_user(username, '123456', '*****@*****.**')
    response = users.edit_user(username, new_username='')
    assert response.status_code == 200
    assert response.json() == ['Username cannot be blank']
def test(data):
    username = actions.random_str()
    response = users.create_new_user(username, '')
    assert response.status_code == 200
    assert response.json() == ['Password cannot be blank']
def setup(data):
    actions.store('username', actions.random_str())
    users.create_new_user(data.username, '123456', '*****@*****.**')
def test(data):
    password = actions.random_str()
    response = users.create_new_user('', password)
    assert response.status_code == 200
    assert response.json() == ['Username cannot be blank']