Files
EasyCLIProxyAPI/tests/clientAccess.test.ts
T
lzt404 efc8811d0c feat: refine WebUI access and Claude Desktop model mappings
- add a shortcut to open the management WebUI
- hide redundant runtime credential identifiers
- simplify health check descriptions
- use existing Claude model aliases directly
- preserve context capabilities from original models
2026-08-02 16:14:25 +08:00

33 lines
1.3 KiB
TypeScript

import { describe, expect, it } from 'bun:test';
import { clientApiProfiles, webUiManagementUrl } from '../src/services/clientAccess';
describe('客户端 API 接入信息', () => {
it('生成 OpenAI、Claude 和 Gemini 三种正确格式', () => {
const profiles = clientApiProfiles(9527, '192.168.1.8');
expect(profiles.map((profile) => profile.id)).toEqual(['openai', 'claude', 'gemini']);
expect(profiles[0].baseUrl).toBe('http://127.0.0.1:9527/v1');
expect(profiles[0].lanUrl).toBe('http://192.168.1.8:9527/v1');
expect(profiles[1].baseUrl).toBe('http://127.0.0.1:9527');
expect(profiles[1].lanUrl).toBe('http://192.168.1.8:9527');
expect(profiles[2].baseUrl).toBe('http://127.0.0.1:9527');
expect(profiles[2].lanUrl).toBe('http://192.168.1.8:9527');
});
it('端口无效时回退到 8317,缺少局域网地址时保持为空', () => {
const [openai] = clientApiProfiles(0);
expect(openai.baseUrl).toBe('http://127.0.0.1:8317/v1');
expect(openai.lanUrl).toBeNull();
});
it('使用当前内核端口生成 WebUI 登录地址', () => {
expect(webUiManagementUrl(9527)).toBe(
'http://127.0.0.1:9527/management.html#/login',
);
expect(webUiManagementUrl(0)).toBe(
'http://127.0.0.1:8317/management.html#/login',
);
});
});