mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-31 19:16:29 +00:00
30 lines
1 KiB
TypeScript
30 lines
1 KiB
TypeScript
import assert from 'node:assert/strict'
|
|
|
|
import { test } from 'vitest'
|
|
|
|
import { fetchPrimaryProfileSessions } from './profile-session-routing'
|
|
|
|
test('primary session reads use the profile-aware request path', async () => {
|
|
const calls: Array<{ profile: string | null; path: string }> = []
|
|
const expected = { sessions: [{ id: 'session-1' }], total: 1, profile_totals: { default: 1 } }
|
|
|
|
const result = await fetchPrimaryProfileSessions(
|
|
new URLSearchParams({ profile: 'default', limit: '20' }),
|
|
async (profile, path) => {
|
|
calls.push({ profile, path })
|
|
|
|
return expected
|
|
}
|
|
)
|
|
|
|
assert.deepEqual(calls, [{ profile: null, path: '/api/profiles/sessions?profile=default&limit=20' }])
|
|
assert.equal(result, expected)
|
|
})
|
|
|
|
test('primary session reads preserve the empty-list fallback', async () => {
|
|
const result = await fetchPrimaryProfileSessions(new URLSearchParams({ profile: 'all' }), async () => {
|
|
throw new Error('remote unavailable')
|
|
})
|
|
|
|
assert.deepEqual(result, { sessions: [], total: 0, profile_totals: {} })
|
|
})
|