testMountsAndRecords
a library is mounted in the project's root namespace, and its record is beside it
import { defaultMount, projectRoot, recordFor, within } from "#codebase/tcmts/cli/libraries"; import assert from "node:assert/strict"; export const testMountsAndRecords = () => { assert.equal(projectRoot(["tcmts.cli.main", "tcmts.README"]), "tcmts"); assert.equal(projectRoot(["a.x", "b.y"]), ""); assert.equal(projectRoot(["square"]), ""); assert.equal(defaultMount(["tcmts.cli.main"], "geo"), "tcmts.lib.geo"); assert.equal(defaultMount(["a.x", "b.y"], "geo"), "lib.geo"); // (a record at the top doesn't make another top namespace) assert.equal(defaultMount(["app.main", "libraries"], "geo"), "app.lib.geo"); // (nor do the libraries mounted already: a codebase holding only lib.react has no root namespace) assert.equal( defaultMount(["lib.react.Pages", "lib.react.match"], "server", ["lib.react"]), "lib.server", ); assert.equal( defaultMount(["lib.react.Pages", "lib.libraries", "lib.trust"], "trust", ["lib.react"]), "lib.trust", ); assert.equal( defaultMount(["app.main", "app.lib.react.Pages"], "server", ["app.lib.react"]), "app.lib.server", ); assert.equal(recordFor("tcmts.lib.geo"), "tcmts.lib.libraries"); assert.equal(recordFor("geo"), "libraries"); assert.ok(within("tcmts.lib.geo", "tcmts.lib.geo")); assert.ok(within("tcmts.lib.geo.area", "tcmts.lib.geo")); assert.ok(!within("tcmts.lib.geography", "tcmts.lib.geo")); }