pi-mono/packages/coding-agent/test/package-distribution.test.ts
2026-08-22 21:19:38 +02:00

26 lines
928 B
TypeScript

import { readFileSync } from "node:fs";
import { describe, expect, test } from "vitest";
interface CodingAgentPackageJson {
bin: { pi: string };
main: string;
exports: {
".": { import: string; types: string };
"./client": { import: string; types: string };
"./rpc-entry": { import: string };
};
}
const packageJson = JSON.parse(
readFileSync(new URL("../package.json", import.meta.url), "utf8"),
) as CodingAgentPackageJson;
describe("package distribution entrypoints", () => {
test("uses the bundle for executables and modular output for libraries", () => {
expect(packageJson.bin.pi).toBe("dist/bundle/cli.js");
expect(packageJson.main).toBe("./dist/index.js");
expect(packageJson.exports["."].import).toBe("./dist/index.js");
expect(packageJson.exports["./client"].import).toBe("./dist/client/index.js");
expect(packageJson.exports["./rpc-entry"].import).toBe("./dist/bundle/rpc-entry.js");
});
});