Repository URL to install this package:
|
Version:
0.1.1 ▾
|
from django.contrib.auth import get_user_model
from django.contrib.auth.models import Permission
from rest_framework.authtoken.models import Token
from rest_framework.reverse import reverse
from rest_framework.test import (APIClient, APIRequestFactory, APITestCase,
force_authenticate)
from authentication.views import (ProfileViewSet, ProvideAuthTokenView,
UserPermissionViewSet)
class ProvideAuthTokenViewTestCase(APITestCase):
fixtures = [
'ContactLocation.yaml',
'ContactTelephoneType.yaml',
'ContactCountry.yaml',
]
def setUp(self):
self.user = get_user_model().objects.create_user(username='user',email='a@a.de',password='123456abc', first_name='Max', last_name='Mustermann')
self.token = Token.objects.create(user=self.user)
self.factory = APIRequestFactory()
self.view = ProvideAuthTokenView.as_view()
def test_provide_auth_token(self):
request = self.factory.get('')
force_authenticate(request, user=self.user)
response = self.view(request)
self.assertEqual(response.data['apiToken'], self.token.key)
assert response.data['apiToken'] == self.token.key, 'Should be the same token.'
class ProfileViewSetTestCase(APITestCase):
'''Profile ViewSet'''
fixtures = [
'ContactLocation.yaml',
'ContactTelephoneType.yaml',
'ContactCountry.yaml',
]
def setUp(self):
self.user = get_user_model().objects.create_superuser(username='user',email='a@a.de',password='123456abc', first_name='Max', last_name='Mustermann')
self.token = Token.objects.create(user=self.user)
self.factory = APIRequestFactory()
self.view = ProfileViewSet.as_view({'get':'list'})
def test_get_permissions_url(self):
'''Permissions URL'''
request = self.factory.get('')
force_authenticate(request, user=self.user)
response = self.view(request)
self.assertEqual(response.data['results'][0]['permissions'], '%s' % (reverse('authentication:userpermission-detail',args=[self.user.profile.id],request=request)))
# class UserPermissionViewSetTestCase(APITestCase):
# '''User Permission ViewSet'''
#
# fixtures = [
# 'ContactLocation.yaml',
# 'ContactTelephoneType.yaml',
# 'ContactCountry.yaml',
# ]
#
# def setUp(self):
# self.user = get_user_model().objects.create_superuser(username='user',email='a@a.de',password='123456abc', first_name='Max', last_name='Mustermann')
# # self.perm = Permission.objects.get(codename='view_user')
# self.perms = Permission.objects.all()
# self.user.user_permissions.set(list(self.perms))
# self.token = Token.objects.create(user=self.user)
# self.factory = APIRequestFactory()
# self.view = UserPermissionViewSet.as_view({'get':'list'})
#
# def test_get_user_permissions_repr(self):
# '''Permissions Repr'''
# # request = self.factory.get('')
# # force_authenticate(request, user=self.user, token=self.user.auth_token)
# # response = self.view(request)
# client = APIClient()
# client.credentials(HTTP_AUTHORIZATION='Token ' + self.user.auth_token.key)
# result = client.get('/api/auth/userpermission/', format='json')
# print(result)
# print(client)
# self.assertTrue(False)
# # self.assertEqual(response.data['results'][0]['permissions'], '%s' % (reverse('authentication:userpermission-detail',args=[self.user.profile.id],request=request)))