diff --git a/test_paypal.py b/test_paypal.py deleted file mode 100644 index 703a3e2..0000000 --- a/test_paypal.py +++ /dev/null @@ -1,109 +0,0 @@ -#!/usr/bin/env python -""" -Script para testear la configuración de PayPal -Ejecutar: python test_paypal.py -""" -import os -import sys -import django - -def main() -> None: - # Configurar Django solo cuando se ejecuta script manualmente. - os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'proyecto.settings') - sys.path.insert(0, os.path.dirname(__file__)) - django.setup() - - from django.conf import settings - - print("=" * 60) - print("TEST DE CONFIGURACIÓN DE PAYPAL") - print("=" * 60) - - # Verificar configuración - print("\n1. Verificando configuración en settings.py:") - print(f" PAYPAL_MODE: {settings.PAYPAL_MODE}") - print(f" PAYPAL_CLIENT_ID: {settings.PAYPAL_CLIENT_ID[:20]}..." if settings.PAYPAL_CLIENT_ID else " ❌ NO CONFIGURADO") - print(f" PAYPAL_CLIENT_SECRET: {settings.PAYPAL_CLIENT_SECRET[:20]}..." if settings.PAYPAL_CLIENT_SECRET else " ❌ NO CONFIGURADO") - - # Intentar importar paypalrestsdk - print("\n2. Verificando SDK de PayPal:") - try: - import paypalrestsdk - print(" ✓ paypalrestsdk importado correctamente") - print(f" Versión: {paypalrestsdk.__version__ if hasattr(paypalrestsdk, '__version__') else 'Desconocida'}") - except ImportError as e: - print(f" ❌ Error: {e}") - print(" SOLUCIÓN: uv add paypalrestsdk") - sys.exit(1) - - # Intentar conectar a PayPal - print("\n3. Probando conexión a PayPal:") - try: - paypalrestsdk.configure({ - "mode": settings.PAYPAL_MODE, - "client_id": settings.PAYPAL_CLIENT_ID, - "client_secret": settings.PAYPAL_CLIENT_SECRET - }) - print(" ✓ Configuración de PayPal aplicada") - - # Intentar crear un pago de prueba - print("\n4. Creando pago de prueba:") - test_payment = paypalrestsdk.Payment({ - "intent": "sale", - "payer": { - "payment_method": "paypal" - }, - "redirect_urls": { - "return_url": "http://localhost:8000/test-return", - "cancel_url": "http://localhost:8000/test-cancel" - }, - "transactions": [ - { - "amount": { - "total": "10.00", - "currency": "EUR", - "details": { - "subtotal": "10.00", - "tax": "0", - "shipping": "0" - } - }, - "description": "Pago de prueba", - "item_list": { - "items": [ - { - "name": "Test Item", - "sku": "test_1", - "price": "10.00", - "currency": "EUR", - "quantity": 1 - } - ] - } - } - ] - }) - - if test_payment.create(): - print(" ✓ Pago creado exitosamente") - print(f" Payment ID: {test_payment.id}") - for link in test_payment.links: - if link.rel == "approval_url": - print(f" URL de aprobación: {link.href}") - else: - print(" ❌ Error al crear el pago:") - if hasattr(test_payment, 'error') and test_payment.error: - print(f" {test_payment.error}") - - except Exception as e: - print(f" ❌ Error de conexión: {e}") - import traceback - traceback.print_exc() - - print("\n" + "=" * 60) - print("TEST COMPLETADO") - print("=" * 60) - - -if __name__ == '__main__': - main() diff --git a/test_product_cache.py b/test_product_cache.py deleted file mode 100644 index 004e337..0000000 --- a/test_product_cache.py +++ /dev/null @@ -1,85 +0,0 @@ -#!/usr/bin/env python -""" -Script de prueba para el cacheo de productos en Redis -Ejecutar: python test_product_cache.py -""" -import os -import django - -# Configurar Django -os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'proyecto.settings') -django.setup() - -from tienda.models import Product -from django.core.cache import cache -import time - -def test_product_cache(): - """Prueba el sistema de cacheo de productos""" - print("=" * 60) - print("TEST: Sistema de Cacheo de Productos en Redis") - print("=" * 60) - - # Obtener un producto de prueba - try: - product = Product.objects.first() - if not product: - print("❌ No hay productos en la base de datos para probar") - return - - product_id = product.id - cache_key = f'product_{product_id}' - - print(f"\n📦 Producto de prueba: {product.name} (ID: {product_id})") - - # 1. Limpiar caché del producto - cache.delete(cache_key) - print(f"\n1️⃣ Caché limpiado") - - # 2. Primera visita (debe cargar desde BD) - print(f"\n2️⃣ Primera visita - Cargando desde BD...") - start_time = time.time() - cached_product = cache.get(cache_key) - if cached_product is None: - print(" ✅ No está en caché (esperado)") - product_from_db = Product.objects.select_related('category', 'primary_image', 'creator').prefetch_related('secondary_images').get(id=product_id) - cache.set(cache_key, product_from_db, 300) - print(f" ✅ Producto cacheado por 5 minutos") - db_time = (time.time() - start_time) * 1000 - - # 3. Segunda visita (debe cargar desde caché) - print(f"\n3️⃣ Segunda visita - Cargando desde caché...") - start_time = time.time() - cached_product = cache.get(cache_key) - if cached_product: - print(f" ✅ Encontrado en caché: {cached_product.name}") - cache_time = (time.time() - start_time) * 1000 - - # 4. Comparar tiempos - print(f"\n⏱️ Comparación de rendimiento:") - print(f" - Desde BD: {db_time:.2f}ms") - print(f" - Desde caché: {cache_time:.2f}ms") - speedup = db_time / cache_time if cache_time > 0 else float('inf') - print(f" - Mejora: {speedup:.1f}x más rápido") - - # 5. Verificar TTL - ttl = cache.ttl(cache_key) - print(f"\n⏳ TTL (tiempo de vida): {ttl} segundos (~5 minutos)") - - # 6. Verificar en Redis - print(f"\n🔍 Verificación en Redis:") - print(f" - Clave: {cache_key}") - print(f" - Base de datos: 1") - print(f" - Comando para ver: valkey-cli -n 1 GET ':1:{cache_key}'") - - print("\n" + "=" * 60) - print("✅ TEST COMPLETADO EXITOSAMENTE") - print("=" * 60) - - except Exception as e: - print(f"❌ Error durante el test: {e}") - import traceback - traceback.print_exc() - -if __name__ == "__main__": - test_product_cache()