| 51 | const FIXTURE_DIR = path.join(__dirname, 'fixtures', 'kernel-parity'); |
| 52 | |
| 53 | function canon(result: ExtractionResult): { nodes: string[]; edges: string[]; refs: string[] } { |
| 54 | return { |
| 55 | nodes: result.nodes |
| 56 | .map(({ updatedAt: _u, ...n }) => JSON.stringify(n, Object.keys(n).sort())) |
| 57 | .sort(), |
| 58 | edges: result.edges.map((e) => JSON.stringify(e, Object.keys(e).sort())).sort(), |
| 59 | refs: result.unresolvedReferences |
| 60 | .map((r) => JSON.stringify(r, Object.keys(r).sort())) |
| 61 | .sort(), |
| 62 | }; |
| 63 | } |
| 64 | |
| 65 | const ENV_KEYS = ['CODEGRAPH_KERNEL', 'CODEGRAPH_KERNEL_LANGS'] as const; |
| 66 | let savedEnv: Record<string, string | undefined>; |