feat(esmole): store, sources, registry, manager, backend binders
This commit is contained in:
1 parent
42712d508c
commit
889e844768
11 files changed
+330
No files matched your search
@@ -0,0 +1,29 @@
|
||||
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()
|
||||
})
|
||||
})
|
||||
Reference in new issue
Block a user