Files
Renato bc43c9e772
Some checks failed
Test Suite / test-backend (push) Has been cancelled
Test Suite / test-frontend (push) Has been cancelled
Test Suite / e2e-tests (push) Has been cancelled
Test Suite / coverage-check (push) Has been cancelled
🎓 Initial commit: Math2 Platform - Plataforma de Álgebra Lineal PRO
 Características:
- 45 ejercicios universitarios (Basic → Advanced)
- Renderizado LaTeX profesional
- IA generativa (Z.ai/DashScope)
- Docker 9 servicios
- Tests 123/123 pasando
- Seguridad enterprise (JWT, XSS, Rate limiting)

🐳 Infraestructura:
- Next.js 14 + Node.js 20
- PostgreSQL 15 + Redis 7
- Docker Compose completo
- Nginx + SSL ready

📚 Documentación:
- 5 informes técnicos completos
- README profesional
- Scripts de deployment automatizados

Estado: Producción lista 
2026-03-31 11:27:11 -03:00

58 lines
1.1 KiB
TypeScript

/**
* Vitest Test Setup
*
* Creates mock objects for testing
*/
import { vi } from 'vitest';
// Mock environment variables
vi.stubEnv('JWT_SECRET', 'test-jwt-secret-for-unit-tests');
vi.stubEnv('NODE_ENV', 'test');
// ============================================
// MOCK PRISMA
// ============================================
export const mockPrisma = {
user: {
findUnique: vi.fn(),
create: vi.fn(),
update: vi.fn(),
findMany: vi.fn(),
},
exercise: {
findUnique: vi.fn(),
findMany: vi.fn(),
findFirst: vi.fn(),
count: vi.fn(),
create: vi.fn(),
update: vi.fn(),
},
exerciseAttempt: {
create: vi.fn(),
findMany: vi.fn(),
findFirst: vi.fn(),
count: vi.fn(),
aggregate: vi.fn(),
},
progress: {
findUnique: vi.fn(),
findMany: vi.fn(),
create: vi.fn(),
update: vi.fn(),
upsert: vi.fn(),
},
ranking: {
findUnique: vi.fn(),
findMany: vi.fn(),
create: vi.fn(),
update: vi.fn(),
upsert: vi.fn(),
},
module: {
findUnique: vi.fn(),
findMany: vi.fn(),
},
$transaction: vi.fn((callback) => callback(mockPrisma)),
};