testSearchAsksTcmsRegistryByDefault
tcm lib search asks tcm's registry when it's given none and keeps none, without keeping it; a registry given is kept, and
asked from then on
import { DEFAULT_REGISTRY, REGISTRY_SETTING, registryToAsk } from "#codebase/tcmts/cli/libraries"; import assert from "node:assert/strict"; export const testSearchAsksTcmsRegistryByDefault = () => { const settings = new Map<string, string>(); const store = { getSetting: (k: string) => settings.get(k), setSetting: (k: string, v: string) => void settings.set(k, v), }; assert.equal(DEFAULT_REGISTRY, "https://tcm.codes/registry"); assert.equal(registryToAsk(store, undefined), DEFAULT_REGISTRY); assert.equal(settings.size, 0); assert.equal(registryToAsk(store, " https://registry.example/ "), "https://registry.example"); assert.equal(settings.get(REGISTRY_SETTING), "https://registry.example"); assert.equal(registryToAsk(store, undefined), "https://registry.example"); assert.throws( () => registryToAsk(store, "registry.example"), /--registry takes a registry's address/, ); }