Mudanza de repo
This commit is contained in:
53
api/licence/tests.py
Normal file
53
api/licence/tests.py
Normal file
@@ -0,0 +1,53 @@
|
||||
|
||||
from django.urls import reverse
|
||||
from rest_framework.test import APITestCase, APIClient
|
||||
from rest_framework import status
|
||||
from django.contrib.auth import get_user_model
|
||||
from .models import Licencia
|
||||
|
||||
User = get_user_model()
|
||||
|
||||
class LicenciaViewSetTests(APITestCase):
|
||||
def setUp(self):
|
||||
self.superuser = User.objects.create_superuser(username="superuser", password="superpass")
|
||||
self.user = User.objects.create_user(username="user", password="userpass")
|
||||
self.client = APIClient()
|
||||
|
||||
def test_superuser_can_list_licencias(self):
|
||||
Licencia.objects.create(nombre="Lic1", descripcion="desc1", almacenamiento=10)
|
||||
self.client.force_authenticate(user=self.superuser)
|
||||
url = reverse('licencia-list')
|
||||
response = self.client.get(url)
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
self.assertTrue(len(response.data) >= 1)
|
||||
|
||||
def test_superuser_can_create_licencia(self):
|
||||
self.client.force_authenticate(user=self.superuser)
|
||||
url = reverse('licencia-list')
|
||||
data = {"nombre": "Lic2", "descripcion": "desc2", "almacenamiento": 20}
|
||||
response = self.client.post(url, data)
|
||||
self.assertIn(response.status_code, [status.HTTP_201_CREATED, status.HTTP_200_OK])
|
||||
|
||||
def test_superuser_can_update_licencia(self):
|
||||
lic = Licencia.objects.create(nombre="Lic3", descripcion="desc3", almacenamiento=30)
|
||||
self.client.force_authenticate(user=self.superuser)
|
||||
url = reverse('licencia-detail', args=[lic.id])
|
||||
data = {"descripcion": "updated"}
|
||||
response = self.client.patch(url, data)
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
self.assertEqual(response.data['descripcion'], "updated")
|
||||
|
||||
def test_user_cannot_create_licencia(self):
|
||||
self.client.force_authenticate(user=self.user)
|
||||
url = reverse('licencia-list')
|
||||
data = {"nombre": "Lic4", "descripcion": "desc4", "almacenamiento": 40}
|
||||
response = self.client.post(url, data)
|
||||
self.assertNotIn(response.status_code, [status.HTTP_201_CREATED, status.HTTP_200_OK])
|
||||
|
||||
def test_user_cannot_update_licencia(self):
|
||||
lic = Licencia.objects.create(nombre="Lic5", descripcion="desc5", almacenamiento=50)
|
||||
self.client.force_authenticate(user=self.user)
|
||||
url = reverse('licencia-detail', args=[lic.id])
|
||||
data = {"descripcion": "updated"}
|
||||
response = self.client.patch(url, data)
|
||||
self.assertNotIn(response.status_code, [status.HTTP_200_OK])
|
||||
Reference in New Issue
Block a user