import { PrismaClient } from '@prisma/client'; import { generateAccessToken } from '../src/auth/tokens'; import axios from 'axios'; async function main() { const prisma = new PrismaClient(); const user = await prisma.user.findUnique({ where: { email: 'ivan@horuxfin.com' }, include: { platformRoles: true } }); if (!user) { console.log('User not found'); return; } const token = generateAccessToken({ userId: user.id, email: user.email, role: 'contador', tenantId: 'c52c2f5d-b1ae-45c6-8cc8-b11c9611618a', platformRoles: user.platformRoles.map(r => r.role as any), tokenVersion: user.tokenVersion, }); const baseURL = process.env.NEXT_PUBLIC_API_URL || 'http://localhost:4000/api'; async function test(name: string, url: string, headers?: any) { try { const r = await axios.get(`${baseURL}${url}`, { headers: { Authorization: `Bearer ${token}`, ...headers }, timeout: 10000, }); console.log(`✅ ${name}: ${r.status}`); } catch (e: any) { console.log(`❌ ${name}: ${e.response?.status} ${JSON.stringify(e.response?.data)}`); } } await test('/tenants (no XVT)', '/tenants'); await test('/tenants (Husberto)', '/tenants', { 'X-View-Tenant': 'd75bf020-2008-4881-ab96-77467bf9e1fd' }); await test('/tenants/mine', '/tenants/mine'); await prisma.$disconnect(); } main().catch(e => { console.error(e); process.exit(1); });