wip: first run of implementation
This commit is contained in:
32
tests/engine/agentic/capabilities/registry.test.ts
Normal file
32
tests/engine/agentic/capabilities/registry.test.ts
Normal file
@@ -0,0 +1,32 @@
|
||||
import { describe, expect, it } from 'vitest';
|
||||
import { CapabilityRegistryService } from '../../../../src/main/agentic/capabilities/registry';
|
||||
|
||||
describe('CapabilityRegistryService', () => {
|
||||
it('returns per-surface capability differences', () => {
|
||||
const registry = new CapabilityRegistryService();
|
||||
|
||||
const tabCapabilities = registry.getSnapshot({ surface: 'tab' });
|
||||
const sidebarCapabilities = registry.getSnapshot({ surface: 'sidebar' });
|
||||
|
||||
expect(tabCapabilities.widgets).toContain('tabs');
|
||||
expect(sidebarCapabilities.widgets).toContain('tabs');
|
||||
expect(tabCapabilities.actions).toContain('toggleSidebar');
|
||||
expect(sidebarCapabilities.actions).toContain('toggleAssistantSidebar');
|
||||
expect(tabCapabilities.actions).not.toContain('toggleAssistantSidebar');
|
||||
});
|
||||
|
||||
it('omits disabled capabilities from active lists', () => {
|
||||
const registry = new CapabilityRegistryService({
|
||||
disabledActions: ['openSettings'],
|
||||
disabledWidgets: ['chart'],
|
||||
disabledTools: ['view_image'],
|
||||
});
|
||||
|
||||
const snapshot = registry.getSnapshot({ surface: 'tab' });
|
||||
|
||||
expect(snapshot.actions).not.toContain('openSettings');
|
||||
expect(snapshot.widgets).not.toContain('chart');
|
||||
expect(snapshot.tools).not.toContain('view_image');
|
||||
expect(snapshot.disabled).toEqual(expect.arrayContaining(['action:openSettings', 'widget:chart', 'tool:view_image']));
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user