import mysql from 'mysql2/promise';
import dotenv from 'dotenv';
import path from 'path';

// Load env
dotenv.config({ path: path.resolve(__dirname, '../../../.env') });
dotenv.config();

console.log('Loaded Environment:');
console.log('DB_HOST:', process.env.DB_HOST);
console.log('DB_PORT:', process.env.DB_PORT);
console.log('DB_USER:', process.env.DB_USER);
console.log('DB_NAME:', process.env.DB_NAME);

async function test() {
  try {
    console.log('Creating pool...');
    const pool = mysql.createPool({
      host: process.env.DB_HOST || '127.0.0.1',
      port: parseInt(process.env.DB_PORT || '3306'),
      user: process.env.DB_USER || 'root',
      password: process.env.DB_PASSWORD || '',
      database: process.env.DB_NAME || 'wild_dubai',
      connectTimeout: 5000,
    });
    
    console.log('Getting connection...');
    const conn = await pool.getConnection();
    console.log('Connection acquired successfully!');
    const [rows] = await conn.execute('SHOW TABLES');
    console.log('Tables:', rows);
    conn.release();
    await pool.end();
  } catch (err: any) {
    console.error('Error connecting:', err);
  }
}

test();
