reset password

This commit is contained in:
fjrodriguez
2022-12-20 12:51:02 -06:00
parent e1588c797d
commit 79364700d2
8 changed files with 160 additions and 21 deletions

View File

@@ -1,3 +1,56 @@
from django.test import TestCase
from django.urls import reverse
# Create your tests here.
from django.contrib.auth.models import User
from .models import Clientes
class ClientesTests(TestCase):
@classmethod
def setUpTestData(cls):
test_user = User.objects.create_user(username='testuser1',password='Soluciones28@')
test_user.save()
cls.cliente = Clientes.objects.create(
RFC="SCT050708EB2",
Nombre="Aduanasoft",
Activo=True,
#fecha_baja="2022-12-20",
email="fjrodriguez28@gmail.com",
conteo_mes=12,
)
def test_redirect_if_not_logged_in(self):
response = self.client.get(reverse('index'))
self.assertRedirects(response, '/accounts/login/?next=/')
def test_cliente_content(self):
self.assertEqual(self.cliente.RFC,"SCT050708EB2")
self.assertEqual(self.cliente.Nombre,"Aduanasoft")
self.assertEqual(self.cliente.Activo,True)
#self.assertEqual(self.cliente.fecha_baja,"2022-12-20")
self.assertEqual(self.cliente.email,"fjrodriguez28@gmail.com")
self.assertEqual(self.cliente.conteo_mes,12)
#test for login user view and contains client with RFC SCT...
def test_cliente_login_cliente_listview(self):
login = self.client.login(username='testuser1',password='Soluciones28@')
response = self.client.get(reverse('index'))
self.assertEqual(str(response.context['user']), 'testuser1')
self.assertEqual(response.status_code,200)
self.assertContains(response, "SCT050708EB2")
self.assertTemplateUsed(response, "Clientes/index.html")
#---------------_APIs Views Tests
from rest_framework import status
from rest_framework.test import APITestCase, APIClient
class APITests(APITestCase):
@classmethod
def setUpTestData(cls):
pass
def test_api_check_RFC(self):
pass

View File

@@ -4,6 +4,7 @@ from .views import (
timbres_cliente,
ClientesUpdateView,
ClientesCreateView,
ErroresTimbresListView,
export_Excel,
send_timbres_Email,
Retrive_Cliente_Email,
@@ -22,6 +23,7 @@ urlpatterns = [
path('timbres_cliente/<str:RFC>/', timbres_cliente, name='timbres_cliente'),
path('cliente/update/<int:pk>/',ClientesUpdateView.as_view(),name='update_cliente'),
path('cliente/add/', ClientesCreateView.as_view(), name='add_cliente'),
path('errores/timbres/list/', ErroresTimbresListView.as_view(), name='ErroresTimbresList'),
path('get_timbres_xls/', export_Excel, name='export_Excel'),
path('send_timbres_cliente/',send_timbres_Email, name='send_timbres_Email'),
path('getActivoRFC/', check_RFC.as_view(), name='check_active_RFC'),

View File

@@ -13,6 +13,7 @@ from django.contrib.auth.decorators import login_required
from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger
from django.db.models import Q
from django.views.generic.edit import CreateView,UpdateView
from django.views.generic.list import ListView
from django.contrib.auth.mixins import LoginRequiredMixin, UserPassesTestMixin
from .custom_decorators import is_staff_access, http_basic_auth
@@ -357,16 +358,22 @@ def PACS_Retrive_RFCS(request):
#-----------------------------------API VIEWS
#--------------------------------------------
from rest_framework import status
class check_RFC(APIView):
permission_classes = (IsAuthenticated,)
def get(self,request):
rfc = request.GET.get('RFC', None)
cliente, created = Clientes.objects.get_or_create(RFC=rfc)
if created:
cliente.Activo=True
cliente.save()
serializer = ClienteSerializer(cliente)
return Response(serializer.data)
rfc = request.GET.get('RFC', None)
try:
cliente, created = Clientes.objects.get_or_create(RFC=rfc)
serializer = ClienteSerializer(cliente)
if not serializer.is_valid:
return Response(serializer.errors,status=400)
if created:
cliente.Activo=True
cliente.save()
return Response(serializer.data)
except Exception as E:
return Response({'Error':f'check_RFC:{E} RFC:{rfc}','isError':True})
class add_timbre2(APIView):
permission_classes = (IsAuthenticated,)
@@ -400,7 +407,7 @@ class add_timbre2(APIView):
folio=folio,
modo=modo
)
return Response({'fok':f'{e}'})
return Response({'Error':f'{e}'})
class saldo_funct2(APIView):
permission_classes =(IsAuthenticated,)
@@ -425,6 +432,12 @@ class check_host(APIView):
#---------------------------CLASS BASED VIEWS
#--------------------------------------------
class ErroresTimbresListView(LoginRequiredMixin,ListView):
model = ErroresTimbres
paginate_by = 100
template_name = 'Clientes/Errores_Timbres_list.html'
class ClientesUpdateView(UserPassesTestMixin,LoginRequiredMixin,UpdateView):
model= Clientes
form_class=ClienteForm