使用Python3和更科学的API写法
This commit is contained in:
33
utils/api/tests.py
Normal file
33
utils/api/tests.py
Normal file
@@ -0,0 +1,33 @@
|
||||
from django.test.testcases import TestCase
|
||||
from django.core.urlresolvers import reverse
|
||||
|
||||
from rest_framework.test import APIClient
|
||||
|
||||
from account.models import User, AdminType
|
||||
|
||||
|
||||
class APITestCase(TestCase):
|
||||
client_class = APIClient
|
||||
|
||||
def create_user(self, username, password, admin_type=AdminType.REGULAR_USER, login=False):
|
||||
user = User.objects.create(username=username, admin_type=admin_type)
|
||||
user.set_password(password)
|
||||
user.save()
|
||||
if login:
|
||||
self.client.login(username=username, password=password)
|
||||
return user
|
||||
|
||||
def create_admin(self, username="admin", password="admin", login=False):
|
||||
return self.create_user(username=username, password=password, admin_type=AdminType.ADMIN, login=login)
|
||||
|
||||
def create_super_admin(self, username="root", password="root", login=False):
|
||||
return self.create_user(username=username, password=password, admin_type=AdminType.SUPER_ADMIN, login=login)
|
||||
|
||||
def reverse(self, url_name):
|
||||
return reverse(url_name)
|
||||
|
||||
def assertSuccess(self, response):
|
||||
self.assertTrue(response.data["error"] is None)
|
||||
|
||||
def assertFailed(self, response):
|
||||
self.assertTrue(response.data["error"] is not None)
|
||||
Reference in New Issue
Block a user