![]() Server : Apache/2 System : Linux server-15-235-50-60 5.15.0-164-generic #174-Ubuntu SMP Fri Nov 14 20:25:16 UTC 2025 x86_64 User : gositeme ( 1004) PHP Version : 8.2.29 Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname Directory : /home/gositeme/backups/lavocat.quebec/backup-20250730-021618/scripts/ |
const { PrismaClient } = require('@prisma/client');
const prisma = new PrismaClient();
async function testChat() {
try {
console.log('Testing chat system...\n');
// 1. Check if chat rooms exist
console.log('1. Checking chat rooms...');
const chatRooms = await prisma.chatRoom.findMany({
include: {
participants: {
include: {
user: {
select: {
id: true,
name: true,
email: true,
role: true
}
}
}
},
messages: {
include: {
user: {
select: {
id: true,
name: true,
email: true,
role: true
}
}
},
orderBy: {
createdAt: 'asc'
}
}
}
});
console.log(`Found ${chatRooms.length} chat rooms:`);
chatRooms.forEach(room => {
console.log(` - ${room.name} (${room.type})`);
console.log(` Participants: ${room.participants.length}`);
console.log(` Messages: ${room.messages.length}`);
if (room.messages.length > 0) {
console.log(` Last message: "${room.messages[room.messages.length - 1].content}"`);
}
});
// 2. Check if users exist
console.log('\n2. Checking users...');
const users = await prisma.user.findMany({
select: {
id: true,
name: true,
email: true,
role: true
}
});
console.log(`Found ${users.length} users:`);
users.forEach(user => {
console.log(` - ${user.name} (${user.email}) - ${user.role}`);
});
// 3. Check chat participants
console.log('\n3. Checking chat participants...');
const participants = await prisma.chatParticipant.findMany({
include: {
user: {
select: {
id: true,
name: true,
email: true,
role: true
}
},
chatRoom: {
select: {
id: true,
name: true,
type: true
}
}
}
});
console.log(`Found ${participants.length} chat participants:`);
participants.forEach(participant => {
console.log(` - ${participant.user.name} in "${participant.chatRoom.name}" (${participant.role})`);
});
// 4. Check messages
console.log('\n4. Checking messages...');
const messages = await prisma.message.findMany({
include: {
user: {
select: {
id: true,
name: true,
email: true,
role: true
}
},
chatRoom: {
select: {
id: true,
name: true,
type: true
}
}
},
orderBy: {
createdAt: 'asc'
}
});
console.log(`Found ${messages.length} messages:`);
messages.forEach(message => {
console.log(` - "${message.content}" by ${message.user.name} in ${message.chatRoom.name} (${message.createdAt})`);
});
console.log('\nā
Chat system test completed successfully!');
} catch (error) {
console.error('ā Error testing chat system:', error);
} finally {
await prisma.$disconnect();
}
}
testChat();