Files
dbmole-mcp/packages/esmole-mcp/test/unit/manager.test.ts
T

30 lines
1.1 KiB
TypeScript

import { mkdtempSync, rmSync } from 'node:fs'
import { tmpdir } from 'node:os'
import { join } from 'node:path'
import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'
import { createManager } from '../../src/manager.js'
import { createRegistry } from '../../src/registry.js'
describe('createManager', () => {
let dir: string
beforeEach(() => {
dir = mkdtempSync(join(tmpdir(), 'esmole-manager-'))
vi.spyOn(console, 'error').mockImplementation(() => {})
})
afterEach(() => {
rmSync(dir, { recursive: true, force: true })
vi.restoreAllMocks()
})
it('builds a manager exposing get/invalidate/disposeAll', async () => {
const registry = createRegistry({ storePath: join(dir, 'connections.json'), env: {} })
const manager = createManager(registry)
expect(typeof manager.get).toBe('function')
expect(typeof manager.invalidate).toBe('function')
expect(typeof manager.disposeAll).toBe('function')
await expect(manager.disposeAll()).resolves.toBeUndefined()
})
})