// One-shot DB smoke test for the multi-user kiosk migrations. import { initDb, getDb } from '../db/index.js'; import { ensureMainUser, getMainUser } from '../auth.js'; import { app } from 'electron'; initDb(process.env.DB_PATH || './data/db/oradio.sqlite'); const db = getDb(); ensureMainUser(process.env.MAIN_USER || 'morphix'); const userCols = db.prepare("PRAGMA table_info(users)").all().map((c) => c.name); const deviceCols = db.prepare("PRAGMA table_info(kiosk_devices)").all().map((c) => c.name); const wlCols = db.prepare("PRAGMA table_info(kiosk_device_users)").all().map((c) => c.name); const roomStateCols = db.prepare("PRAGMA table_info(room_state)").all().map((c) => c.name); const users = db.prepare('SELECT id, username, role, is_main, avatar_color, avatar_emoji FROM users').all(); const mainCount = db.prepare('SELECT count(*) AS c FROM users WHERE is_main = 1').get().c; console.log('users cols: ', userCols.join(', ')); console.log('kiosk_devices cols: ', deviceCols.join(', ')); console.log('kiosk_device_users: ', wlCols.join(', ')); console.log('room_state cols: ', roomStateCols.join(', ')); console.log('users: ', JSON.stringify(users, null, 2)); console.log('main user count: ', mainCount); console.log('getMainUser(): ', getMainUser()); app.quit();