feat(gateway): add system.services and dashboard services grid
This commit is contained in:
@@ -40,6 +40,30 @@ describe('system handlers', () => {
|
||||
expect(typeof r.uptime).toBe('number');
|
||||
expect(r.uptime).toBeGreaterThanOrEqual(59);
|
||||
});
|
||||
|
||||
it('system.services returns empty list when getServices is not provided', async () => {
|
||||
const req: GatewayRequest = { id: 2, method: 'system.services' };
|
||||
const result = await handlers['system.services'](req) as GatewayResponse;
|
||||
expect(result.id).toBe(2);
|
||||
expect((result.result as any).services).toEqual([]);
|
||||
});
|
||||
|
||||
it('system.services returns services from getServices callback', async () => {
|
||||
const handlers = createSystemHandlers({
|
||||
...deps,
|
||||
getServices: () => ([
|
||||
{ name: 'telegram', type: 'channel', status: 'connected', description: 'Telegram bot' },
|
||||
{ name: 'cron', type: 'automation', status: 'configured', description: 'Cron scheduler', itemCount: 2 },
|
||||
] as any),
|
||||
});
|
||||
|
||||
const req: GatewayRequest = { id: 3, method: 'system.services' };
|
||||
const result = await handlers['system.services'](req) as GatewayResponse;
|
||||
expect((result.result as any).services).toEqual([
|
||||
{ name: 'telegram', type: 'channel', status: 'connected', description: 'Telegram bot' },
|
||||
{ name: 'cron', type: 'automation', status: 'configured', description: 'Cron scheduler', itemCount: 2 },
|
||||
]);
|
||||
});
|
||||
});
|
||||
|
||||
describe('system.tokenUsage handler', () => {
|
||||
|
||||
Reference in New Issue
Block a user