From 34b1e56e292ce1e4a4eb428a263185cf9a13f9e2 Mon Sep 17 00:00:00 2001 From: alfadb Date: Sat, 2 May 2026 09:31:56 +0800 Subject: [PATCH] =?UTF-8?q?test:=20add=20'max'=20=E2=86=92=20'xhigh'=20tes?= =?UTF-8?q?t=20cases=20for=20reasoning=20effort=20normalization?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cover the DeepSeek reasoning_effort 'max' alias in: - TestExtractOpenAIReasoningEffortFromBody - TestExtractCCReasoningEffortFromBody - TestExtractResponsesReasoningEffortFromBody --- .../service/gateway_forward_as_chat_completions_test.go | 6 ++++++ .../internal/service/gateway_forward_as_responses_test.go | 4 ++++ .../service/openai_gateway_service_hotpath_test.go | 7 +++++++ 3 files changed, 17 insertions(+) diff --git a/backend/internal/service/gateway_forward_as_chat_completions_test.go b/backend/internal/service/gateway_forward_as_chat_completions_test.go index 5003e5b39d..2cd10b7914 100644 --- a/backend/internal/service/gateway_forward_as_chat_completions_test.go +++ b/backend/internal/service/gateway_forward_as_chat_completions_test.go @@ -29,6 +29,12 @@ func TestExtractCCReasoningEffortFromBody(t *testing.T) { require.Equal(t, "xhigh", *got) }) + t.Run("DeepSeek max", func(t *testing.T) { + got := extractCCReasoningEffortFromBody([]byte(`{"reasoning_effort":"Max"}`)) + require.NotNil(t, got) + require.Equal(t, "xhigh", *got) + }) + t.Run("missing effort", func(t *testing.T) { require.Nil(t, extractCCReasoningEffortFromBody([]byte(`{"model":"gpt-5"}`))) }) diff --git a/backend/internal/service/gateway_forward_as_responses_test.go b/backend/internal/service/gateway_forward_as_responses_test.go index e48d8b22fa..03b18a9350 100644 --- a/backend/internal/service/gateway_forward_as_responses_test.go +++ b/backend/internal/service/gateway_forward_as_responses_test.go @@ -21,6 +21,10 @@ func TestExtractResponsesReasoningEffortFromBody(t *testing.T) { require.NotNil(t, got) require.Equal(t, "high", *got) + maxGot := ExtractResponsesReasoningEffortFromBody([]byte(`{"model":"deepseek-v4-pro","reasoning":{"effort":"max"}}`)) + require.NotNil(t, maxGot) + require.Equal(t, "xhigh", *maxGot) + require.Nil(t, ExtractResponsesReasoningEffortFromBody([]byte(`{"model":"claude-sonnet-4.5"}`))) } diff --git a/backend/internal/service/openai_gateway_service_hotpath_test.go b/backend/internal/service/openai_gateway_service_hotpath_test.go index c9806ac267..56085b4b65 100644 --- a/backend/internal/service/openai_gateway_service_hotpath_test.go +++ b/backend/internal/service/openai_gateway_service_hotpath_test.go @@ -595,6 +595,13 @@ func TestExtractOpenAIReasoningEffortFromBody(t *testing.T) { wantNil: false, wantValue: "xhigh", }, + { + name: "DeepSeek max 归一化为 xhigh", + body: []byte(`{"reasoning_effort":"max"}`), + model: "deepseek-v4-pro", + wantNil: false, + wantValue: "xhigh", + }, { name: "minimal 归一化为空", body: []byte(`{"reasoning":{"effort":"minimal"}}`),