Files
SubMiner/src/main/runtime/cli-command-prechecks-main-deps.test.ts

24 lines
1.0 KiB
TypeScript

import assert from 'node:assert/strict';
import test from 'node:test';
import { createBuildHandleTexthookerOnlyModeTransitionMainDepsHandler } from './cli-command-prechecks-main-deps';
test('cli prechecks main deps builder maps transition handlers', () => {
const calls: string[] = [];
const deps = createBuildHandleTexthookerOnlyModeTransitionMainDepsHandler({
isTexthookerOnlyMode: () => true,
setTexthookerOnlyMode: (enabled) => calls.push(`set:${enabled}`),
commandNeedsOverlayStartupPrereqs: () => true,
ensureOverlayStartupPrereqs: () => calls.push('prereqs'),
startBackgroundWarmups: () => calls.push('warmups'),
logInfo: (message) => calls.push(`info:${message}`),
})();
assert.equal(deps.isTexthookerOnlyMode(), true);
assert.equal(deps.commandNeedsOverlayStartupPrereqs({} as never), true);
deps.setTexthookerOnlyMode(false);
deps.ensureOverlayStartupPrereqs();
deps.startBackgroundWarmups();
deps.logInfo('x');
assert.deepEqual(calls, ['set:false', 'prereqs', 'warmups', 'info:x']);
});