def test_create_token_invalid_credentials(self): """Test that token is not created if invalid credentials are given""" create_sample_user() payload = {'username': '******', 'password': '******'} res = self.client.post(LOGIN_URL, payload) self.assertNotIn('token', res.data) self.assertEqual(res.status_code, status.HTTP_400_BAD_REQUEST) def test_create_token_no_user(self): """Test that token is not created if user doesn't exist""" payload = {'username': '******', 'password': '******'} res = self.client.post(LOGIN_URL, payload) self.assertNotIn('token', res.data) self.assertEqual(res.status_code, status.HTTP_400_BAD_REQUEST) def test_create_token_missing_field(self): """Test that username and password are required""" res = self.client.post(LOGIN_URL, { 'username': '******', 'password': '' }) self.assertNotIn('token', res.data) self.assertEqual(res.status_code, status.HTTP_400_BAD_REQUEST) def test_retrieve_user_unauthorized(self): """Test that authentication required for users""" res = self.client.get(ME_URL) self.assertEqual(res.status_code, status.HTTP_401_UNAUTHORIZED)
def test_create_token_for_user(self): """Test that a token is created for the user""" create_sample_user() payload = {'username': '******', 'password': '******'} res = self.client.post(LOGIN_URL, payload) self.assertIn('token', res.data) self.assertEqual(res.status_code, status.HTTP_200_OK)
def test_create_token_invalid_credentials(self): """Test that token is not created if invalid credentials are given""" create_sample_user() payload = { 'username': '******', 'password': '******' } res = self.client.post(LOGIN_URL, payload) self.assertNotIn('token', res.data) self.assertEqual(res.status_code, status.HTTP_400_BAD_REQUEST)
def test_user_exists(self): """Test creating a user that already exists fails""" payload = { 'email': '*****@*****.**', 'username': '******', 'password': '******' } create_sample_user(**payload) res = self.client.post(REGISTER_USER_URL, payload) self.assertEqual(res.status_code, status.HTTP_400_BAD_REQUEST)
def setUp(self): self.user = create_sample_user() self.client = APIClient() self.client.force_authenticate(user=self.user)