Files
moltbot/extensions/qa-lab/src/process-tree-cpu.test.ts
2026-04-29 02:29:01 -07:00

28 lines
940 B
TypeScript

import { describe, expect, it } from "vitest";
import { parsePsCpuTimeMs, parsePsRssBytes } from "./process-tree-cpu.js";
describe("process tree CPU helpers", () => {
it("parses ps CPU time strings", () => {
expect(parsePsCpuTimeMs("00:01")).toBe(1_000);
expect(parsePsCpuTimeMs("01:02")).toBe(62_000);
expect(parsePsCpuTimeMs("01:02:03")).toBe(3_723_000);
});
it("rejects malformed ps CPU time strings", () => {
expect(parsePsCpuTimeMs("")).toBeNull();
expect(parsePsCpuTimeMs("nope")).toBeNull();
expect(parsePsCpuTimeMs("1:2:3:4")).toBeNull();
});
it("parses ps RSS KiB values as bytes", () => {
expect(parsePsRssBytes("1024")).toBe(1_048_576);
expect(parsePsRssBytes("1.5")).toBe(1_536);
});
it("rejects malformed ps RSS values", () => {
expect(parsePsRssBytes("")).toBeNull();
expect(parsePsRssBytes("nope")).toBeNull();
expect(parsePsRssBytes("-1")).toBeNull();
});
});