#29 fix(Tests): add auth to tests.

This commit is contained in:
2025-12-13 17:10:00 -05:00
parent e6d2160d2e
commit f3d3681bc4
8 changed files with 65 additions and 21 deletions

View File

@@ -1,4 +1,5 @@
from django.test import TestCase, Client from django.contrib.auth.models import User
from django.test import TestCase
from ..models import AdminCode from ..models import AdminCode
@@ -7,14 +8,18 @@ import json
class TestAdminCode(TestCase): class TestAdminCode(TestCase):
def setUp(self): def setUp(self):
username = 'nombre_usuario'
password = 'contraseña'
email = 'correo@example.com'
self.user = User.objects.create_user(username, email, password)
self.client.login(username=username, password=password)
self.valid_code = 'some valid code' self.valid_code = 'some valid code'
admin_code = AdminCode() admin_code = AdminCode()
admin_code.value = self.valid_code admin_code.value = self.valid_code
admin_code.clean() admin_code.clean()
admin_code.save() admin_code.save()
self.client = Client()
def test_validate_code(self): def test_validate_code(self):
url = '/don_confiao/api/admin_code/validate/' + self.valid_code url = '/don_confiao/api/admin_code/validate/' + self.valid_code
response = self.client.get(url) response = self.client.get(url)

View File

@@ -2,7 +2,7 @@ import json
import csv import csv
import io import io
from django.urls import reverse from django.contrib.auth.models import User
from rest_framework import status from rest_framework import status
from rest_framework.test import APITestCase from rest_framework.test import APITestCase
from ..models import Sale, Product, Customer from ..models import Sale, Product, Customer
@@ -10,6 +10,12 @@ from ..models import Sale, Product, Customer
class TestAPI(APITestCase): class TestAPI(APITestCase):
def setUp(self): def setUp(self):
username = 'nombre_usuario'
password = 'contraseña'
email = 'correo@example.com'
self.user = User.objects.create_user(username, email, password)
self.client.login(username=username, password=password)
self.product = Product.objects.create( self.product = Product.objects.create(
name='Panela', name='Panela',
price=5000, price=5000,

View File

@@ -1,12 +1,19 @@
import json import json
from unittest.mock import patch from unittest.mock import patch
from django.test import Client, TestCase from django.contrib.auth.models import User
from django.test import TestCase
from ..models import Customer from ..models import Customer
class TestCustomersFromTryton(TestCase): class TestCustomersFromTryton(TestCase):
def setUp(self): def setUp(self):
username = 'nombre_usuario'
password = 'contraseña'
email = 'correo@example.com'
self.user = User.objects.create_user(username, email, password)
self.client.login(username=username, password=password)
self.customer = Customer.objects.create( self.customer = Customer.objects.create(
name='Calos', name='Calos',
external_id=5 external_id=5

View File

@@ -2,13 +2,20 @@ import csv
import json import json
from unittest.mock import patch from unittest.mock import patch
from django.test import TestCase, Client from django.contrib.auth.models import User
from django.urls import reverse from django.test import TestCase
from ..models import Sale, SaleLine, Product, Customer from ..models import Sale, SaleLine, Product, Customer
class TestExportarVentasParaTryton(TestCase): class TestExportarVentasParaTryton(TestCase):
def setUp(self): def setUp(self):
username = 'nombre_usuario'
password = 'contraseña'
email = 'correo@example.com'
self.user = User.objects.create_user(username, email, password)
self.client.login(username=username, password=password)
self.product = Product.objects.create( self.product = Product.objects.create(
name='Panela', name='Panela',
price=5000, price=5000,
@@ -41,9 +48,8 @@ class TestExportarVentasParaTryton(TestCase):
) )
def test_exportar_ventas_para_tryton(self): def test_exportar_ventas_para_tryton(self):
client = Client()
url = '/don_confiao/exportar_ventas_para_tryton' url = '/don_confiao/exportar_ventas_para_tryton'
response = client.get(url) response = self.client.get(url)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
self.assertEqual(response['Content-Type'], 'text/csv') self.assertEqual(response['Content-Type'], 'text/csv')
csv_content = response.content.decode('utf-8') csv_content = response.content.decode('utf-8')
@@ -82,12 +88,11 @@ class TestExportarVentasParaTryton(TestCase):
@patch('sabatron_tryton_rpc_client.client.Client.call') @patch('sabatron_tryton_rpc_client.client.Client.call')
@patch('sabatron_tryton_rpc_client.client.Client.connect') @patch('sabatron_tryton_rpc_client.client.Client.connect')
def test_send_sales_to_tryton(self, mock_connect, mock_call): def test_send_sales_to_tryton(self, mock_connect, mock_call):
client = Client()
external_id = '23423' external_id = '23423'
url = '/don_confiao/api/enviar_ventas_a_tryton' url = '/don_confiao/api/enviar_ventas_a_tryton'
mock_connect.return_value = None mock_connect.return_value = None
mock_call.return_value = [external_id] mock_call.return_value = [external_id]
response = client.post(url) response = self.client.post(url)
self.assertEqual(response.status_code, 200) self.assertEqual(response.status_code, 200)
content = json.loads(response.content.decode('utf-8')) content = json.loads(response.content.decode('utf-8'))

View File

@@ -1,4 +1,5 @@
from django.test import TestCase, Client from django.contrib.auth.models import User
from django.test import TestCase
from django.core.exceptions import ValidationError from django.core.exceptions import ValidationError
from ..models import Sale, Product, SaleLine, Customer, ReconciliationJar from ..models import Sale, Product, SaleLine, Customer, ReconciliationJar
@@ -7,12 +8,16 @@ import json
class TestJarReconcliation(TestCase): class TestJarReconcliation(TestCase):
def setUp(self): def setUp(self):
username = 'nombre_usuario'
password = 'contraseña'
email = 'correo@example.com'
self.user = User.objects.create_user(username, email, password)
self.client.login(username=username, password=password)
customer = Customer() customer = Customer()
customer.name = 'Alejo Mono' customer.name = 'Alejo Mono'
customer.save() customer.save()
self.client = Client()
purchase = Sale() purchase = Sale()
purchase.customer = customer purchase.customer = customer
purchase.date = "2024-07-30" purchase.date = "2024-07-30"

View File

@@ -1,10 +1,14 @@
from django.test import Client, TestCase from django.contrib.auth.models import User
from django.test import TestCase
# from ..models import PaymentMethods
class TestPaymentMethods(TestCase): class TestPaymentMethods(TestCase):
def setUp(self): def setUp(self):
self.client = Client() username = 'nombre_usuario'
password = 'contraseña'
email = 'correo@example.com'
self.user = User.objects.create_user(username, email, password)
self.client.login(username=username, password=password)
def test_keys_in_payment_methods_to_select(self): def test_keys_in_payment_methods_to_select(self):
response = self.client.get( response = self.client.get(

View File

@@ -2,12 +2,18 @@ import json
from decimal import Decimal from decimal import Decimal
from unittest.mock import patch from unittest.mock import patch
from django.test import Client, TestCase from django.contrib.auth.models import User
from ..models import ProductCategory, Product from django.test import TestCase
from ..models import Product
class TestProductsFromTryton(TestCase): class TestProductsFromTryton(TestCase):
def setUp(self): def setUp(self):
username = 'nombre_usuario'
password = 'contraseña'
email = 'correo@example.com'
self.user = User.objects.create_user(username, email, password)
self.client.login(username=username, password=password)
self.product = Product.objects.create( self.product = Product.objects.create(
name='Panela', name='Panela',
price=5000, price=5000,

View File

@@ -1,14 +1,20 @@
from django.test import TestCase, Client from django.contrib.auth.models import User
from django.test import TestCase
from ..models import Sale, Product, SaleLine, Customer from ..models import Sale, Product, SaleLine, Customer
class TestSummaryViewPurchase(TestCase): class TestSummaryViewPurchase(TestCase):
def setUp(self): def setUp(self):
username = 'nombre_usuario'
password = 'contraseña'
email = 'correo@example.com'
self.user = User.objects.create_user(username, email, password)
self.client.login(username=username, password=password)
customer = Customer() customer = Customer()
customer.name = 'Alejo Mono' customer.name = 'Alejo Mono'
customer.save() customer.save()
self.client = Client()
purchase = Sale() purchase = Sale()
purchase.customer = customer purchase.customer = customer
purchase.date = "2024-07-30" purchase.date = "2024-07-30"