mirror of
https://github.com/EKKOLearnAI/hermes-web-ui.git
synced 2026-05-25 21:40:13 +00:00
26 lines
1.3 KiB
TypeScript
26 lines
1.3 KiB
TypeScript
import { join } from 'path'
|
|
import { afterEach, describe, expect, it, vi } from 'vitest'
|
|
|
|
const originalWebUiHome = process.env.HERMES_WEB_UI_HOME
|
|
const originalWebuiStateDir = process.env.HERMES_WEBUI_STATE_DIR
|
|
|
|
afterEach(() => {
|
|
vi.resetModules()
|
|
if (originalWebUiHome === undefined) delete process.env.HERMES_WEB_UI_HOME
|
|
else process.env.HERMES_WEB_UI_HOME = originalWebUiHome
|
|
if (originalWebuiStateDir === undefined) delete process.env.HERMES_WEBUI_STATE_DIR
|
|
else process.env.HERMES_WEBUI_STATE_DIR = originalWebuiStateDir
|
|
})
|
|
|
|
describe('media controller', () => {
|
|
it('uses Hermes Web UI media directory as the default generated video output path', async () => {
|
|
process.env.HERMES_WEB_UI_HOME = '/tmp/hermes-web-ui-test-home'
|
|
const { defaultImageOutputPath, defaultMediaOutputPath } = await import('../../packages/server/src/controllers/hermes/media')
|
|
|
|
expect(defaultMediaOutputPath('req_123')).toBe(join('/tmp/hermes-web-ui-test-home', 'media', 'req_123.mp4'))
|
|
expect(defaultMediaOutputPath('bad/request:id')).toBe(join('/tmp/hermes-web-ui-test-home', 'media', 'bad_request_id.mp4'))
|
|
expect(defaultImageOutputPath('img_123')).toBe(join('/tmp/hermes-web-ui-test-home', 'media', 'img_123.png'))
|
|
expect(defaultImageOutputPath('bad/request:id', 1)).toBe(join('/tmp/hermes-web-ui-test-home', 'media', 'bad_request_id-2.png'))
|
|
})
|
|
})
|