Files
makelore/tests/unit/pi-release-proof-wiring.test.ts

29 lines
1.3 KiB
TypeScript

import { readFile } from 'node:fs/promises';
import { resolve } from 'node:path';
import { describe, expect, it } from 'vitest';
describe('Pi packaged release proof wiring', () => {
it('keeps extension and proxy Provider scenarios assigned to their own proof entrypoints', async () => {
const source = await readFile(
resolve('electron/coding-runtime/pi/release-proof.ts'),
'utf8',
);
const extensionStart = source.indexOf('export async function runFinalAsarExtensionProof');
const proxyStart = source.indexOf('export async function startFinalAsarProxyCompositionProof');
const resilienceStart = source.indexOf('export async function startFinalAsarResilienceProof');
expect(extensionStart).toBeGreaterThan(-1);
expect(proxyStart).toBeGreaterThan(extensionStart);
expect(resilienceStart).toBeGreaterThan(proxyStart);
expect(source.slice(extensionStart, proxyStart))
.toContain("startLocalProofProvider('subagent')");
expect(source.slice(extensionStart, proxyStart))
.not.toContain("startLocalProofProvider('submit-rejection')");
expect(source.slice(proxyStart, resilienceStart))
.toContain("startLocalProofProvider('submit-rejection')");
expect(source.slice(proxyStart, resilienceStart))
.not.toContain("startLocalProofProvider('subagent')");
});
});