make web ui state directory configurable (#764)
This commit is contained in:
@@ -9,11 +9,6 @@ vi.mock('../../packages/server/src/db/hermes/session-store', () => ({
|
||||
getSessionDetailPaginated: vi.fn(),
|
||||
createSession: vi.fn(),
|
||||
updateSessionStats: vi.fn(),
|
||||
useLocalSessionStore: vi.fn(() => false),
|
||||
}))
|
||||
|
||||
vi.mock('../../packages/server/src/db/hermes/sessions-db', () => ({
|
||||
getSessionDetailFromDb: vi.fn(),
|
||||
}))
|
||||
|
||||
vi.mock('../../packages/server/src/services/logger', () => ({
|
||||
@@ -44,7 +39,7 @@ vi.mock('../../packages/server/src/db/hermes/usage-store', () => ({
|
||||
updateUsage: vi.fn(),
|
||||
}))
|
||||
|
||||
// --- Types mirroring chat-run-socket.ts ---
|
||||
// --- Types mirroring run-chat response flushing ---
|
||||
|
||||
interface SessionMessage {
|
||||
id: number | string
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
import { describe, expect, it } from 'vitest'
|
||||
import { getListenHost } from '../../packages/server/src/config'
|
||||
import { homedir } from 'os'
|
||||
import { join, resolve } from 'path'
|
||||
import { getListenHost, getWebUiHome } from '../../packages/server/src/config'
|
||||
|
||||
describe('server config', () => {
|
||||
it('defaults to an IPv4 bind host', () => {
|
||||
@@ -13,4 +15,16 @@ describe('server config', () => {
|
||||
it('ignores blank BIND_HOST values', () => {
|
||||
expect(getListenHost({ BIND_HOST: ' ' })).toBe('0.0.0.0')
|
||||
})
|
||||
|
||||
it('defaults web-ui home to ~/.hermes-web-ui', () => {
|
||||
expect(getWebUiHome({})).toBe(join(homedir(), '.hermes-web-ui'))
|
||||
})
|
||||
|
||||
it('uses HERMES_WEB_UI_HOME when provided', () => {
|
||||
expect(getWebUiHome({ HERMES_WEB_UI_HOME: ' ./tmp/hermes-ui ' })).toBe(resolve('./tmp/hermes-ui'))
|
||||
})
|
||||
|
||||
it('uses HERMES_WEBUI_STATE_DIR as a compatibility alias', () => {
|
||||
expect(getWebUiHome({ HERMES_WEBUI_STATE_DIR: ' ./tmp/hermes-state ' })).toBe(resolve('./tmp/hermes-state'))
|
||||
})
|
||||
})
|
||||
|
||||
@@ -49,9 +49,7 @@ vi.mock('../../packages/server/src/db/hermes/sessions-db', () => ({
|
||||
getUsageStatsFromDb: getUsageStatsFromDbMock,
|
||||
}))
|
||||
|
||||
// Mock useLocalSessionStore to return false so we test the CLI path
|
||||
vi.mock('../../packages/server/src/db/hermes/session-store', () => ({
|
||||
useLocalSessionStore: () => false,
|
||||
listSessions: localListSessionsMock,
|
||||
searchSessions: localSearchSessionsMock,
|
||||
getSessionDetail: localGetSessionDetailMock,
|
||||
|
||||
Reference in New Issue
Block a user