mirror of
https://github.com/Syngnat/GoNavi.git
synced 2026-07-21 21:01:55 +08:00
- 编辑连接前主动拉取可编辑配置,恢复主密码与 SSH 等已保存密钥 - 支持 AI 供应商编辑态回填 API Key,并保持默认遮罩展示 - 修正 AI 设置长错误提示换行展示,避免测试连接报错被裁切 Refs #489
43 lines
1.1 KiB
TypeScript
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();
|
|
});
|
|
});
|