feat: 设置页新增模型卡片,支持为7种能力配置默认模型
This commit is contained in:
@@ -113,4 +113,45 @@ describe("设置数据访问层", () => {
|
||||
expect(result).toEqual({ compact: false, theme: "dark" });
|
||||
});
|
||||
});
|
||||
|
||||
test("updateSettings 写入 defaultModels 并读取", () => {
|
||||
withSettingsDb((db) => {
|
||||
const updated = updateSettings(
|
||||
db,
|
||||
{ defaultModels: { text: "model-1", imageRecognition: null } },
|
||||
createNoopLogger(),
|
||||
);
|
||||
expect(updated.defaultModels).toEqual({ text: "model-1", imageRecognition: null });
|
||||
expect(updated.compact).toBe(false);
|
||||
expect(updated.theme).toBe("system");
|
||||
|
||||
const read = getSettings(db);
|
||||
expect(read.defaultModels).toEqual({ text: "model-1", imageRecognition: null });
|
||||
});
|
||||
});
|
||||
|
||||
test("defaultModels 与 theme/compact 合并持久化", () => {
|
||||
withSettingsDb((db) => {
|
||||
updateSettings(db, { theme: "dark", compact: true }, createNoopLogger());
|
||||
const result = updateSettings(db, { defaultModels: { imageGeneration: "model-2" } }, createNoopLogger());
|
||||
expect(result).toEqual({
|
||||
compact: true,
|
||||
defaultModels: { imageGeneration: "model-2" },
|
||||
theme: "dark",
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
test("defaultModels 全量替换——前端负责深度合并", () => {
|
||||
withSettingsDb((db) => {
|
||||
updateSettings(db, { defaultModels: { text: "model-1", imageRecognition: "model-2" } }, createNoopLogger());
|
||||
// 前端在 onChange 中负责合并 old + newField,提交完整对象
|
||||
const result = updateSettings(
|
||||
db,
|
||||
{ defaultModels: { text: "model-3", imageRecognition: "model-2" } },
|
||||
createNoopLogger(),
|
||||
);
|
||||
expect(result.defaultModels).toEqual({ text: "model-3", imageRecognition: "model-2" });
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user