Files
agent-radar 2ed3415fb7
Publish Claude Code Binaries / Stage and publish binaries (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-arm64 (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build linux-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build windows-amd64 (push) Canceled after 0s
Sync Tutti Agent Skills / sync (push) Canceled after 0s
Windows Agent Adapters / Test Windows agent adapters (push) Canceled after 0s
Windows Daemon Adapters / Test Windows daemon adapters (push) Canceled after 0s
Publish Tutti App Runtime / Publish runtime catalog (push) Canceled after 0s
源码快照 @ 2026-09-01 (source-only, 剔除非源码素材)
2026-09-01 20:17:27 +08:00

60 lines
1.8 KiB
TypeScript

import { describe, expect, it } from "vitest";
import {
DEFAULT_AGENT_SETTINGS,
MAX_UI_FONT_SIZE,
MIN_UI_FONT_SIZE,
normalizeAgentSettings
} from "./agentSettings";
describe("normalizeAgentSettings", () => {
it("ignores removed legacy settings keys", () => {
const provider = DEFAULT_AGENT_SETTINGS.defaultProvider;
const normalized = normalizeAgentSettings({
modelByProvider: {
[provider]: "legacy-model"
},
normalizeZoomOnTerminalClick: !DEFAULT_AGENT_SETTINGS.focusNodeOnClick,
uiFontScalePercent: 140
});
expect(normalized.customModelByProvider[provider]).toBe(
DEFAULT_AGENT_SETTINGS.customModelByProvider[provider]
);
expect(normalized.customModelEnabledByProvider[provider]).toBe(
DEFAULT_AGENT_SETTINGS.customModelEnabledByProvider[provider]
);
expect(normalized.focusNodeOnClick).toBe(
DEFAULT_AGENT_SETTINGS.focusNodeOnClick
);
expect(normalized.uiFontSize).toBe(DEFAULT_AGENT_SETTINGS.uiFontSize);
});
it("normalizes current settings keys", () => {
const provider = DEFAULT_AGENT_SETTINGS.defaultProvider;
const uiFontSize =
DEFAULT_AGENT_SETTINGS.uiFontSize === MIN_UI_FONT_SIZE
? MAX_UI_FONT_SIZE
: MIN_UI_FONT_SIZE;
const normalized = normalizeAgentSettings({
customModelEnabledByProvider: {
[provider]: true
},
customModelByProvider: {
[provider]: "current-model"
},
focusNodeOnClick: !DEFAULT_AGENT_SETTINGS.focusNodeOnClick,
uiFontSize
});
expect(normalized.customModelEnabledByProvider[provider]).toBe(true);
expect(normalized.customModelByProvider[provider]).toBe("current-model");
expect(normalized.focusNodeOnClick).toBe(
!DEFAULT_AGENT_SETTINGS.focusNodeOnClick
);
expect(normalized.uiFontSize).toBe(uiFontSize);
});
});