Files
dev/third_party/pi/packages/coding-agent/test/experimental-session-directory.test.ts
alexion 4def357d09 chore(vendor): import pi 0.85.1
Imported as a linear vendor commit so forge rebases do not replay the upstream root tree.

git-subtree-dir: third_party/pi

git-subtree-split: d981de1229ef899957bbe968bc8dcda02a21f477
2026-09-14 10:48:47 -04:00

25 lines
977 B
TypeScript

import { homedir } from "node:os";
import { resolve } from "node:path";
import { afterEach, describe, expect, test, vi } from "vitest";
import { resolveSessionDirectory } from "../src/experimental/server.ts";
afterEach(() => vi.unstubAllEnvs());
describe("experimental server session directory", () => {
test("uses the experimental directory under the configured agent directory by default", () => {
vi.stubEnv("PI_CODING_AGENT_DIR", "/tmp/pi-agent-config");
expect(resolveSessionDirectory()).toBe("/tmp/pi-agent-config/experimental/sessions");
});
test("resolves an explicit relative directory from the current working directory", () => {
vi.stubEnv("PI_CODING_AGENT_DIR", "/tmp/pi-agent-config");
expect(resolveSessionDirectory("relative/sessions")).toBe(resolve("relative/sessions"));
});
test("expands a tilde in an explicit directory", () => {
expect(resolveSessionDirectory("~/custom-sessions")).toBe(resolve(homedir(), "custom-sessions"));
});
});