36 lines
1.2 KiB
Python
36 lines
1.2 KiB
Python
from django.contrib.auth.models import User
|
|
from django.test import TestCase, Client
|
|
from django.urls import reverse
|
|
from rest_framework.authtoken.models import Token
|
|
from rest_framework.test import APIClient
|
|
|
|
from later42.models.urls import URL
|
|
|
|
|
|
class ApiTests(TestCase):
|
|
def setUp(self) -> None:
|
|
self.username = 'testuser1'
|
|
self.email = 'testuser1@email.com'
|
|
self.password = 'password1234567QWERTY'
|
|
self.user = User.objects.create(
|
|
username=self.username,
|
|
email=self.email
|
|
)
|
|
self.user.set_password(self.password)
|
|
self.user.save()
|
|
|
|
self.url = 'https://google.com'
|
|
|
|
self.c = Client()
|
|
self.c.login(username=self.username, password=self.password)
|
|
self.assertTrue(self.user.is_authenticated)
|
|
self.token = Token.objects.create(user=self.user)
|
|
|
|
def test_url_create(self):
|
|
token = Token.objects.get(user=self.user)
|
|
client = APIClient()
|
|
client.credentials(HTTP_AUTHORIZATION='Token ' + token.key)
|
|
response = client.post(reverse('urls') + f'?url={self.url}')
|
|
assert response.status_code == 200
|
|
self.assertContains(response, 'success')
|