Files
MyGoNavi/frontend/src/utils/aiProviderEditorState.test.ts
Syngnat fdcbadf918 🐛 fix(connection-modal): 支持编辑态回填已保存密码并保持默认遮罩
- 编辑连接前主动拉取可编辑配置,恢复主密码与 SSH 等已保存密钥
- 支持 AI 供应商编辑态回填 API Key,并保持默认遮罩展示
- 修正 AI 设置长错误提示换行展示,避免测试连接报错被裁切

Refs #489
2026-05-30 17:25:58 +08:00

43 lines
1.1 KiB
TypeScript

import { describe, expect, it } from 'vitest';
import {
buildAddProviderEditorSession,
buildClosedProviderEditorSession,
buildEditProviderEditorSession,
} from './aiProviderEditorState';
describe('aiProviderEditorState', () => {
it('starts add flow with idle test state', () => {
const session = buildAddProviderEditorSession({
presetBackendType: 'openai',
presetBaseUrl: 'https://api.openai.com/v1',
presetModel: 'gpt-4.1',
});
expect(session.isEditing).toBe(true);
expect(session.testStatus).toBe('idle');
});
it('starts edit flow with the target provider', () => {
const session = buildEditProviderEditorSession({
provider: {
id: 'provider-1',
type: 'openai',
name: 'OpenAI',
apiKey: '',
hasSecret: true,
},
});
expect(session.isEditing).toBe(true);
expect(session.editingProvider?.id).toBe('provider-1');
});
it('clears edit session when the modal closes', () => {
const session = buildClosedProviderEditorSession();
expect(session.isEditing).toBe(false);
expect(session.editingProvider).toBeNull();
});
});