testWriteServerRecord

tcmts.cli.mcp.testWriteServerRecord · #t24yzuvg · term

A record is written whole, as the server it names reads it back.

import { liveMcpServers, serversDir, writeServerRecord } from "#codebase/tcmts/cli/mcp";
import assert from "node:assert/strict";
import fs from "node:fs";
import os from "node:os";
import path from "node:path";

export const testWriteServerRecord = () => {
  const root = fs.mkdtempSync(path.join(os.tmpdir(), "tcm mcp record "));
  writeServerRecord(root, { pid: process.pid, branch: "session/x", client: "/work" });
  writeServerRecord(root, { pid: process.pid, branch: "session/y", client: "/work" });
  assert.deepEqual(fs.readdirSync(serversDir(root)), [`${process.pid}.json`]);
  assert.deepEqual(liveMcpServers(root), [
    { pid: process.pid, branch: "session/y", client: "/work" },
  ]);
  fs.rmSync(root, { recursive: true, force: true });
}

uses