26 lines
822 B
TypeScript
26 lines
822 B
TypeScript
import { describe, expect, it } from 'vitest'
|
|
import type { ConnectionConfig } from '../../../src/config/types.js'
|
|
import { MissingDatabaseError, resolveDatabase } from '../../../src/db/driver.js'
|
|
|
|
const config: ConnectionConfig = {
|
|
name: 'c',
|
|
type: 'postgres',
|
|
host: 'h',
|
|
user: 'u',
|
|
readonly: false
|
|
}
|
|
|
|
describe('resolveDatabase', () => {
|
|
it('prefers the explicit parameter', () => {
|
|
expect(resolveDatabase({ ...config, database: 'default-db' }, 'explicit')).toBe('explicit')
|
|
})
|
|
|
|
it('falls back to the connection default', () => {
|
|
expect(resolveDatabase({ ...config, database: 'default-db' }, undefined)).toBe('default-db')
|
|
})
|
|
|
|
it('throws when neither is set', () => {
|
|
expect(() => resolveDatabase(config, undefined)).toThrow(MissingDatabaseError)
|
|
})
|
|
})
|