Push model-switching logging into loadCliConfig (#815)

This commit is contained in:
Tommaso Sciortino
2025-06-07 11:12:30 -07:00
committed by GitHub
parent 680f4cdd61
commit 6ea4479064
5 changed files with 45 additions and 112 deletions

View File

@@ -83,29 +83,29 @@ describe('loadCliConfig', () => {
it('should set showMemoryUsage to true when --memory flag is present', async () => {
process.argv = ['node', 'script.js', '--show_memory_usage'];
const settings: Settings = {};
const result = await loadCliConfig(settings);
expect(result.config.getShowMemoryUsage()).toBe(true);
const config = await loadCliConfig(settings);
expect(config.getShowMemoryUsage()).toBe(true);
});
it('should set showMemoryUsage to false when --memory flag is not present', async () => {
process.argv = ['node', 'script.js'];
const settings: Settings = {};
const result = await loadCliConfig(settings);
expect(result.config.getShowMemoryUsage()).toBe(false);
const config = await loadCliConfig(settings);
expect(config.getShowMemoryUsage()).toBe(false);
});
it('should set showMemoryUsage to false by default from settings if CLI flag is not present', async () => {
process.argv = ['node', 'script.js'];
const settings: Settings = { showMemoryUsage: false };
const result = await loadCliConfig(settings);
expect(result.config.getShowMemoryUsage()).toBe(false);
const config = await loadCliConfig(settings);
expect(config.getShowMemoryUsage()).toBe(false);
});
it('should prioritize CLI flag over settings for showMemoryUsage (CLI true, settings false)', async () => {
process.argv = ['node', 'script.js', '--show_memory_usage'];
const settings: Settings = { showMemoryUsage: false };
const result = await loadCliConfig(settings);
expect(result.config.getShowMemoryUsage()).toBe(true);
const config = await loadCliConfig(settings);
expect(config.getShowMemoryUsage()).toBe(true);
});
});
@@ -128,50 +128,50 @@ describe('loadCliConfig telemetry', () => {
it('should set telemetry to false by default when no flag or setting is present', async () => {
process.argv = ['node', 'script.js'];
const settings: Settings = {};
const result = await loadCliConfig(settings);
expect(result.config.getTelemetry()).toBe(false);
const config = await loadCliConfig(settings);
expect(config.getTelemetry()).toBe(false);
});
it('should set telemetry to true when --telemetry flag is present', async () => {
process.argv = ['node', 'script.js', '--telemetry'];
const settings: Settings = {};
const result = await loadCliConfig(settings);
expect(result.config.getTelemetry()).toBe(true);
const config = await loadCliConfig(settings);
expect(config.getTelemetry()).toBe(true);
});
it('should set telemetry to false when --no-telemetry flag is present', async () => {
process.argv = ['node', 'script.js', '--no-telemetry'];
const settings: Settings = {};
const result = await loadCliConfig(settings);
expect(result.config.getTelemetry()).toBe(false);
const config = await loadCliConfig(settings);
expect(config.getTelemetry()).toBe(false);
});
it('should use telemetry value from settings if CLI flag is not present (settings true)', async () => {
process.argv = ['node', 'script.js'];
const settings: Settings = { telemetry: true };
const result = await loadCliConfig(settings);
expect(result.config.getTelemetry()).toBe(true);
const config = await loadCliConfig(settings);
expect(config.getTelemetry()).toBe(true);
});
it('should use telemetry value from settings if CLI flag is not present (settings false)', async () => {
process.argv = ['node', 'script.js'];
const settings: Settings = { telemetry: false };
const result = await loadCliConfig(settings);
expect(result.config.getTelemetry()).toBe(false);
const config = await loadCliConfig(settings);
expect(config.getTelemetry()).toBe(false);
});
it('should prioritize --telemetry CLI flag (true) over settings (false)', async () => {
process.argv = ['node', 'script.js', '--telemetry'];
const settings: Settings = { telemetry: false };
const result = await loadCliConfig(settings);
expect(result.config.getTelemetry()).toBe(true);
const config = await loadCliConfig(settings);
expect(config.getTelemetry()).toBe(true);
});
it('should prioritize --no-telemetry CLI flag (false) over settings (true)', async () => {
process.argv = ['node', 'script.js', '--no-telemetry'];
const settings: Settings = { telemetry: true };
const result = await loadCliConfig(settings);
expect(result.config.getTelemetry()).toBe(false);
const config = await loadCliConfig(settings);
expect(config.getTelemetry()).toBe(false);
});
});