testEachBranchHasItsOwnBrowser

tcmts.cli.browser.test.testEachBranchHasItsOwnBrowser · #ccxqnv3j · function

Each codebase branch has a browser of its own; outside a codebase, each directory. Names agent-browser takes.

import { browserSession } from "#codebase/tcmts/cli/browser";
import assert from "node:assert/strict";

export const testEachBranchHasItsOwnBrowser = () => {
  const main = browserSession("/work/my app", "main", "/work/my app");
  assert.equal(main, browserSession("/work/my app", "main", "/work/my app/sub"));
  assert.notEqual(
    main,
    browserSession("/work/my app", "session/2026-11-08-1ad803", "/work/my app"),
  );
  assert.notEqual(main, browserSession("/work/other", "main", "/work/other"));
  assert.notEqual(
    browserSession(undefined, undefined, "/a"),
    browserSession(undefined, undefined, "/b"),
  );
  for (const s of [main, browserSession(undefined, undefined, "/")])
    assert.match(s, /^tcm-[A-Za-z0-9-]+$/);
}

uses