Skip to content
Snippets Groups Projects
Commit 52afabc1 authored by Chris Li's avatar Chris Li
Browse files

Add coverage package for test report.

parent 037f8297
No related branches found
No related tags found
No related merge requests found
......@@ -128,3 +128,42 @@ class AuthTests(APITestCase):
}
response = self.client.post(url, data, format='json')
self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
def test_validate_token_default(self):
username = "xjhmlcy"
email = "xjhmlcy123@gmail.com"
password = "abcdefg123"
token, token_key = self.add_test_person(username, email, password)
self.client.credentials(HTTP_AUTHORIZATION='Token ' + token_key)
url = "/api/auth/validate-token"
response = self.client.get(url)
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assertEqual(response.data['valid'], 'true')
def test_validate_token_invalid(self):
username = "xjhmlcy"
email = "xjhmlcy123@gmail.com"
password = "abcdefg123"
token, token_key = self.add_test_person(username, email, password)
self.client.credentials(HTTP_AUTHORIZATION='Token ' + token_key[:-1] + "1")
token.user.is_active = True
token.user.save()
url = "/api/auth/validate-token"
response = self.client.get(url)
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assertEqual(response.data['valid'], 'false')
def test_varify_user_and_activate_default(self):
username = "xjhmlcy"
email = "xjhmlcy123@gmail.com"
password = "abcdefg123"
token, token_key = self.add_test_person(username, email, password)
token.user.is_active = False
token.user.save()
url = f"/api/auth/activate/{token.digest}"
response = self.client.get(url)
self.assertEqual(response.status_code, status.HTTP_200_OK)
self.assertTrue(User.objects.get().is_active)
\ No newline at end of file
from django.contrib.auth.models import User
from rest_framework.test import APITestCase
from rest_framework import status
from knox.models import AuthToken
from core.models.profile import Profile
class PasswordTests(APITestCase):
"""
Test suite for Password
"""
def add_test_person(self, username, email, password):
user = User.objects.create_user(username=username, email=email, password=password)
return AuthToken.objects.create(user)
def test_password_change_default(self):
username = "xjhmlcy"
email = "xjhmlcy123@gmail.com"
old_password = "abcdefg123"
new_password = "abcdefg123456"
token, token_key = self.add_test_person(username, email, old_password)
self.client.credentials(HTTP_AUTHORIZATION='Token ' + token_key)
url = "/api/change-password"
data = {
"old_password": old_password,
"new_password": new_password
}
response = self.client.patch(url, data, format='json')
self.assertEqual(response.status_code, status.HTTP_200_OK)
url = "/api/auth/login"
data = {
"username": email,
"password": new_password
}
response = self.client.post(url, data, format='json')
self.assertEqual(response.status_code, status.HTTP_200_OK)
def test_password_change_wrong_old_password(self):
username = "xjhmlcy"
email = "xjhmlcy123@gmail.com"
old_password = "abcdefg123"
new_password = "abcdefg123456"
token, token_key = self.add_test_person(username, email, old_password)
self.client.credentials(HTTP_AUTHORIZATION='Token ' + token_key)
url = "/api/change-password"
data = {
"old_password": old_password + "123",
"new_password": new_password
}
response = self.client.patch(url, data, format='json')
self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
coverage==6.3.2
Django==4.1
django_countries==7.5
django_extensions==3.2.1
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment