33 lines
1.2 KiB
Python
33 lines
1.2 KiB
Python
|
from datetime import datetime, timedelta
|
||
|
|
||
|
from django.test import TestCase, Client
|
||
|
|
||
|
from authentication.models import ExtendedUser
|
||
|
from mail.models import Email, EmailAttachment
|
||
|
from tickets.models import IssueThread, StateChange, Comment
|
||
|
from django.contrib.auth.models import Permission
|
||
|
from knox.models import AuthToken
|
||
|
|
||
|
|
||
|
class ShippingCodeApiTest(TestCase):
|
||
|
|
||
|
def setUp(self):
|
||
|
super().setUp()
|
||
|
self.user = ExtendedUser.objects.create_user('testuser', 'test', 'test')
|
||
|
self.user.user_permissions.add(*Permission.objects.all())
|
||
|
self.user.save()
|
||
|
self.token = AuthToken.objects.create(user=self.user)
|
||
|
self.client = Client(headers={'Authorization': 'Token ' + self.token[1]})
|
||
|
|
||
|
def test_issues_empty(self):
|
||
|
response = self.client.get('/api/2/shipping_codes/')
|
||
|
self.assertEqual(response.status_code, 200)
|
||
|
self.assertEqual(response.json(), [])
|
||
|
|
||
|
def test_issues_create(self):
|
||
|
response = self.client.post('/api/2/shipping_codes/', {'code': '1234'})
|
||
|
self.assertEqual(response.status_code, 201)
|
||
|
self.assertEqual(response.json()['code'], '1234')
|
||
|
self.assertEqual(response.json()['used_at'], None)
|
||
|
self.assertEqual(response.json()['issue_thread'], None)
|