GitNexus/gitnexus/test/unit/group/impact-by-uid.test.ts
ivkond 4fed097abb feat(group): add sync pipeline, CLI, MCP tools, and monorepo fixture
Wire extractors into the sync pipeline with service boundary detection.
GroupService provides high-level API for all group operations.

- Sync pipeline: orchestrates extraction (HTTP, gRPC, topics) with
  service boundary assignment and exact matching
- GroupService: groupList, groupSync, groupContracts, groupQuery,
  groupStatus (groupImpact deferred to cross-repo follow-up PR)
- CLI: group create/add/remove/list/sync/contracts/query/status
- MCP tools: group_list, group_sync, group_contracts, group_query,
  group_status
- Monorepo fixture: 3 services (auth/orders/gateway) connected via
  gRPC + Kafka + HTTP — all intra-repo cross-links discovered
- Documentation: CLI commands and MCP tools added to both READMEs

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 00:40:31 +03:00

25 lines
851 B
TypeScript

import { describe, it, expect } from 'vitest';
import { LocalBackend } from '../../../src/mcp/local/local-backend.js';
/**
* Smoke tests only. Full UID → BFS impact needs an indexed repo and LadybugDB
* (see integration tests under test/integration/lbug-db project).
*/
describe('LocalBackend.impactByUid', () => {
it('method exists on LocalBackend', () => {
const backend = new LocalBackend();
expect(typeof backend.impactByUid).toBe('function');
});
it('returns null when repo is unknown or graph lookup fails', async () => {
const backend = new LocalBackend();
await expect(
backend.impactByUid('nonexistent-repo', 'fake-uid-123', 'upstream', {
maxDepth: 3,
relationTypes: ['CALLS', 'IMPORTS'],
minConfidence: 0,
includeTests: false,
}),
).resolves.toBeNull();
});
});