1a88ab3199
The v0.8 milestone: installable on any Debian-based server via docker (Gitea registry image, honest sandbox degrade), deb (amd64+arm64, advisory postinst), and arch-aware binary — with release consistency enforced by pre-commit hooks + Gitea Actions (3-runner fleet on CT 113, machine-made releases with the full 8-asset matrix + registry image), the CLI carrying the full suite (guide, channel-aware doctor), and the admin runbook (deploy/README.md, evidence-backed recipes). ---ci--- phase: 6 milestone: v0.8 status: complete requirements: covered: [REQ-8-001, REQ-8-002, REQ-8-003, REQ-8-004, REQ-8-005] partial: [] ---/ci---
20 lines
670 B
TypeScript
20 lines
670 B
TypeScript
import { test } from "node:test";
|
|
import assert from "node:assert/strict";
|
|
import { doctor } from "../src/commands/doctor.ts";
|
|
import { testCtx } from "./helpers.ts";
|
|
|
|
test("doctor integration: real box — all prerequisites present", async () => {
|
|
const ctx = testCtx();
|
|
const code = await doctor([], ctx);
|
|
const output = ctx.out() + ctx.err();
|
|
if (output.includes("unshare not found")) {
|
|
console.warn("unshare missing on this box — tolerating its single failure");
|
|
assert.equal(code, 1);
|
|
return;
|
|
}
|
|
assert.equal(code, 0);
|
|
assert.ok(output.includes("node"));
|
|
assert.ok(output.includes("pnpm"));
|
|
assert.ok(output.includes("python3"));
|
|
});
|