test(web): adapt ui-trajectory benches to the merged locale settings scope

The locale plugin now derives its durable preference from a settings scope
bound to the connection service, so the trajectory benches provide a
connection handle before loading it.
This commit is contained in:
_Kerman
2026-08-10 20:15:31 +08:00
parent 9b96a1380b
commit fa2dce28ce
2 changed files with 6 additions and 2 deletions
@@ -75,8 +75,10 @@ describe('tsdown client artifact', () => {
}, (_p: { renderSlot?: unknown }) => null)
// The plugin reads sessionHistory for its per-session history source;
// slot availability is tracked by slots.inject, and the locale plugin
// backs the locale-aware view tab label.
// backs the locale-aware view tab label (its settings scope needs a
// connection handle).
ctx.provide('sessionHistory', {})
ctx.provide('connection', { api: { settings: {} }, isLoopback: false } as never)
const locale = await import('@deepseek-ai/dsh-client-locale/client')
ctx.plugin({ inject: [...locale.inject], apply: locale.apply })
const fiber = ctx.plugin(surface as { apply: (ctx: Context) => void })
@@ -181,7 +181,9 @@ async function bench(snapshot = historySnapshot(NODES)) {
slots.register(
{ name: 'conversation.view', id: 'chat', order: 0, label: 'Chat' } as never, chatBody as never)
ctx.provide('sessionHistory', { source: () => history })
// The locale plugin backs the locale-aware view tab label ('locale' in inject).
// The locale plugin backs the locale-aware view tab label ('locale' in
// inject); its settings scope needs a connection handle.
ctx.provide('connection', { api: { settings: {} }, isLoopback: false } as never)
ctx.plugin({ inject: [...localeInject], apply: localeApply })
const fiber = ctx.plugin({ inject: [...inject], apply })
await fiber.await()