Repository navigation
Expand file tree
/
Copy pathdatabase-test.ts
More file actions
55 lines (44 loc) · 2.45 KB
/
Copy pathdatabase-test.ts
File metadata and controls
55 lines (44 loc) · 2.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
// Test file to verify database connection functionality
import { databaseService } from './services/databaseService';
async function testDatabaseConnections() {
console.log('Testing real database connection functionality...');
console.log('This will attempt actual connections to database servers.');
const connectionStrings = [
'mysql://testuser:testpass@localhost:3306/employee_db',
'postgresql://testuser:testpass@localhost:5432/employee_db',
'sqlite:////tmp/skillsync_enterprise.db',
'sqlite://./local_database.db',
'Server=localhost;Database=employee_db;User Id=testuser;Password=testpass;'
];
for (const connectionString of connectionStrings) {
console.log(`\n=== Testing connection: ${connectionString} ===`);
try {
// Test connection - this will attempt real connection
console.log('🔄 Attempting database connection...');
const connection = await databaseService.connect(connectionString);
console.log(`✅ Connection successful - Type: ${connection.type}`);
// Test schema discovery - this will attempt real schema discovery
console.log('🔄 Discovering database schema...');
const schema = await databaseService.discoverSchema(connection);
console.log(`✅ Schema discovery completed`);
// Test query execution - this will attempt real query
console.log('🔄 Executing test query...');
const result = await databaseService.executeQuery(connection, 'SELECT * FROM employees LIMIT 5');
console.log(`✅ Query execution completed`);
// Close connection
await connection.close();
console.log('✅ Connection closed successfully');
} catch (error) {
console.error(`❌ Connection failed for ${connectionString}:`);
console.error(` Error: ${error instanceof Error ? error.message : 'Unknown error'}`);
console.log(' This is expected if no database server is running at the specified location.');
}
}
console.log('\n=== Database connection tests completed! ===');
console.log('✅ Real connections: Will succeed if database servers are running and accessible');
console.log('❌ Failed connections: Expected when no database server is available');
console.log('📊 All cases fall back gracefully to sample data when real connections fail');
}
// Export for browser console testing
(window as any).testDatabaseConnections = testDatabaseConnections;
export { testDatabaseConnections };