Example #1
0
    def test_simple_unauthorized(self):
        UserFactory.create()

        client = self.get_client()

        endpoint = f'{self.liveserver.url}/api/dummy/'

        response = client.get(endpoint)

        assert response.status_code == 401
Example #2
0
    def test_logout_logged_in(self, client):
        user = UserFactory.create()
        client.login(username=user.username, password='******')
        assert '_auth_user_id' in client.session  # ensure login was successful

        response = client.get('/logout/')
        assert response.status_code == 302
        assert response['Location'] == 'http://testserver/'
        assert '_auth_user_id' not in client.session
Example #3
0
def test_username_handle_unkown_exception(do_complete_mock, client, db):
    do_complete_mock.side_effect = Exception

    # Step 1: login
    response = client.get('/login/')
    assert response.status_code == 200

    user = UserFactory.create(usersocialauth='username')

    # Step 2: enter all data
    data = {
        'username': user.username,
        'password': '******',
    }

    with pytest.raises(Exception):
        response = client.post('/login/', data=data)
Example #4
0
def test_username_login_invalid(client, db):
    # Step 1: login
    response = client.get('/login/')
    assert response.status_code == 200

    user = UserFactory.create(usersocialauth='username')

    # Step 2: enter all data
    data = {
        'username': user.username,
        'password': '******',
    }
    response = client.post('/login/', data=data)
    assert response.status_code == 200
    assert response.context_data['login_form'].is_valid() is False

    assert SESSION_KEY not in client.session
Example #5
0
def test_username_handle_social_exception(do_complete_mock, client, db):
    do_complete_mock.side_effect = SocialAuthBaseException('test123')

    # Step 1: login
    response = client.get('/login/')
    assert response.status_code == 200

    user = UserFactory.create(usersocialauth='username')

    # Step 2: enter all data
    data = {
        'username': user.username,
        'password': '******',
    }

    response = client.post('/login/', data=data)
    assert response.status_code == 302
    assert len(get_messages_from_cookie(response.cookies)) == 1
Example #6
0
def test_username_login(client, db):
    # Step 1: login
    response = client.get('/login/')
    assert response.status_code == 200

    user = UserFactory.create(usersocialauth='username')

    # Step 2: enter all data
    data = {
        'username': user.username,
        'password': '******',
    }
    response = client.post('/login/', data=data)
    assert response.status_code == 302

    assert response.status_code == 302
    assert response['Location'] == 'http://testserver/'

    assert SESSION_KEY in client.session
Example #7
0
def test_username_login_uppercase(client, db):
    # Step 1: login
    response = client.get('/login/')
    assert response.status_code == 200

    user = UserFactory.create(usersocialauth='username')

    # Step 2: enter all data
    data = {
        'username': user.username.upper(),
        'password': '******',
    }
    response = client.post('/login/', data=data)
    assert response.status_code == 302

    assert response.status_code == 302
    assert response['Location'] == 'http://testserver/'

    assert SESSION_KEY in client.session

    assert UserSocialAuth.objects.filter(user=user).count() == 1
Example #8
0
 def setup(self):
     self.user = UserFactory.create()