mirror of
https://github.com/stablyai/orca.git
synced 2026-09-30 00:03:15 +00:00
40 lines
1.4 KiB
TypeScript
40 lines
1.4 KiB
TypeScript
import { mkdtemp, mkdir, rm, writeFile } from 'node:fs/promises'
|
|
import { tmpdir } from 'node:os'
|
|
import { dirname, join } from 'node:path'
|
|
import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'
|
|
|
|
describe('ExternalAutomationsHandler referenced log paths', () => {
|
|
let hermesHome: string
|
|
let previousHermesHome: string | undefined
|
|
|
|
beforeEach(async () => {
|
|
previousHermesHome = process.env.HERMES_HOME
|
|
hermesHome = await mkdtemp(join(tmpdir(), 'relay-hermes-output-'))
|
|
process.env.HERMES_HOME = hermesHome
|
|
vi.resetModules()
|
|
})
|
|
|
|
afterEach(async () => {
|
|
if (previousHermesHome === undefined) {
|
|
delete process.env.HERMES_HOME
|
|
} else {
|
|
process.env.HERMES_HOME = previousHermesHome
|
|
}
|
|
await rm(hermesHome, { recursive: true, force: true })
|
|
vi.resetModules()
|
|
})
|
|
|
|
it('hydrates referenced logs in valid dot-dot-prefixed Hermes subdirectories', async () => {
|
|
const logPath = join(hermesHome, '..logs', 'x-monitor.log')
|
|
await mkdir(dirname(logPath), { recursive: true })
|
|
await writeFile(logPath, 'remote dot-dot-prefixed log line\n', 'utf-8')
|
|
|
|
const { readHermesReferencedLogFile } = await import('./hermes-output-run-files')
|
|
|
|
const result = await readHermesReferencedLogFile(`Latest log path: ${logPath}
|
|
Run summary: monitor automation completed successfully.`)
|
|
|
|
expect(result?.content).toBe('remote dot-dot-prefixed log line\n')
|
|
})
|
|
})
|