initial commit

This commit is contained in:
pi
2026-04-10 23:11:21 +01:00
commit b9a395bcec
26 changed files with 7060 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
import test from "node:test";
import assert from "node:assert/strict";
import { existsSync, readFileSync } from "node:fs";
import { dirname, resolve } from "node:path";
import { fileURLToPath } from "node:url";
const packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), "..");
const pkg = JSON.parse(readFileSync(resolve(packageRoot, "package.json"), "utf8"));
test("package.json exposes pi-web-search as a standalone pi package", () => {
assert.equal(pkg.name, "pi-web-search");
assert.equal(pkg.type, "module");
assert.ok(Array.isArray(pkg.keywords));
assert.ok(pkg.keywords.includes("pi-package"));
assert.deepEqual(pkg.pi, {
extensions: ["./index.ts"],
});
assert.equal(pkg.peerDependencies["@mariozechner/pi-coding-agent"], "*");
assert.equal(pkg.peerDependencies["@mariozechner/pi-tui"], "*");
assert.equal(pkg.peerDependencies["@sinclair/typebox"], "*");
assert.ok("exa-js" in (pkg.dependencies ?? {}));
assert.ok(!("@sinclair/typebox" in (pkg.dependencies ?? {})));
assert.equal(pkg.bundledDependencies, undefined);
assert.deepEqual(pkg.files, ["index.ts", "src"]);
assert.ok(existsSync(resolve(packageRoot, "index.ts")));
assert.ok(existsSync(resolve(packageRoot, "src/runtime.ts")));
assert.ok(existsSync(resolve(packageRoot, "src/tools/web-search.ts")));
assert.equal(existsSync(resolve(packageRoot, "bun.lock")), false);
});