31 lines
877 B
TypeScript
31 lines
877 B
TypeScript
import { describe, expect, it } from "vitest";
|
|
import { formatRuntimeStatusWithDetails } from "./runtime-status.js";
|
|
|
|
describe("formatRuntimeStatusWithDetails", () => {
|
|
it("falls back to unknown when status is missing", () => {
|
|
expect(formatRuntimeStatusWithDetails({})).toBe("unknown");
|
|
});
|
|
|
|
it("includes pid, distinct state, and non-empty details", () => {
|
|
expect(
|
|
formatRuntimeStatusWithDetails({
|
|
status: "running",
|
|
pid: 1234,
|
|
state: "sleeping",
|
|
details: ["healthy", "", "port 18789"],
|
|
}),
|
|
).toBe("running (pid 1234, state sleeping, healthy, port 18789)");
|
|
});
|
|
|
|
it("omits duplicate state text and falsy pid values", () => {
|
|
expect(
|
|
formatRuntimeStatusWithDetails({
|
|
status: "running",
|
|
pid: 0,
|
|
state: "RUNNING",
|
|
details: [],
|
|
}),
|
|
).toBe("running");
|
|
});
|
|
});
|