feat: 原生支持 /v1/responses 接口与 Chat Completions 双协议自适应,增加端到端联调测试

This commit is contained in:
shen
2026-09-15 20:44:27 +08:00
parent a717365c10
commit 524788291b
3 changed files with 201 additions and 97 deletions
+3 -3
View File
@@ -6,7 +6,7 @@ import 'package:kouyu_english/core/models.dart';
void main() {
TestWidgetsFlutterBinding.ensureInitialized();
group('AiService resolveEndpointUri (/v1/chat/completions)', () {
group('AiService resolveEndpointUri', () {
test('resolves OpenAI endpoint ending in /v1 to /v1/chat/completions', () {
final uri = AiService.resolveEndpointUri(
provider: AiProviderType.openAi,
@@ -43,13 +43,13 @@ void main() {
expect(uri.toString(), equals('https://codex.slcydia.fun/v1/chat/completions'));
});
test('converts /responses endpoint to /chat/completions', () {
test('preserves /responses endpoint for OpenAI Responses API support', () {
final uri = AiService.resolveEndpointUri(
provider: AiProviderType.compatible,
endpoint: 'https://codex.slcydia.fun/v1/responses',
model: 'gpt-4o-mini',
);
expect(uri.toString(), equals('https://codex.slcydia.fun/v1/chat/completions'));
expect(uri.toString(), equals('https://codex.slcydia.fun/v1/responses'));
});
test('resolves Gemini endpoint to :generateContent', () {