import { describe, it, expect } from 'vitest'; import { pool } from '../../lib/db/pool.js'; // A pg.Pool emits 'error' when an *idle* pooled client errors (DB restart, // replication failover). With no 'error' listener, EventEmitter throws and the // whole process crashes. The pool must register a handler. describe('db pool error handling', () => { it('has an error listener so an idle-client error never crashes the process', () => { expect(pool.listenerCount('error')).toBeGreaterThan(0); expect(() => pool.emit('error', new Error('simulated idle-client error'), null)).not.toThrow(); }); });