mirror of
https://gitee.com/wanwujie/sub2api
synced 2026-04-03 15:02:13 +08:00
69 lines
1.8 KiB
Go
69 lines
1.8 KiB
Go
|
|
//go:build unit
|
|||
|
|
|
|||
|
|
package service
|
|||
|
|
|
|||
|
|
import (
|
|||
|
|
"testing"
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
func TestApplyThinkingModelSuffix(t *testing.T) {
|
|||
|
|
tests := []struct {
|
|||
|
|
name string
|
|||
|
|
mappedModel string
|
|||
|
|
thinkingEnabled bool
|
|||
|
|
expected string
|
|||
|
|
}{
|
|||
|
|
// Thinking 未开启:保持原样
|
|||
|
|
{
|
|||
|
|
name: "thinking disabled - claude-sonnet-4-5 unchanged",
|
|||
|
|
mappedModel: "claude-sonnet-4-5",
|
|||
|
|
thinkingEnabled: false,
|
|||
|
|
expected: "claude-sonnet-4-5",
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: "thinking disabled - other model unchanged",
|
|||
|
|
mappedModel: "claude-opus-4-6-thinking",
|
|||
|
|
thinkingEnabled: false,
|
|||
|
|
expected: "claude-opus-4-6-thinking",
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
// Thinking 开启 + claude-sonnet-4-5:自动添加后缀
|
|||
|
|
{
|
|||
|
|
name: "thinking enabled - claude-sonnet-4-5 becomes thinking version",
|
|||
|
|
mappedModel: "claude-sonnet-4-5",
|
|||
|
|
thinkingEnabled: true,
|
|||
|
|
expected: "claude-sonnet-4-5-thinking",
|
|||
|
|
},
|
|||
|
|
|
|||
|
|
// Thinking 开启 + 其他模型:保持原样
|
|||
|
|
{
|
|||
|
|
name: "thinking enabled - claude-sonnet-4-5-thinking unchanged",
|
|||
|
|
mappedModel: "claude-sonnet-4-5-thinking",
|
|||
|
|
thinkingEnabled: true,
|
|||
|
|
expected: "claude-sonnet-4-5-thinking",
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: "thinking enabled - claude-opus-4-6-thinking unchanged",
|
|||
|
|
mappedModel: "claude-opus-4-6-thinking",
|
|||
|
|
thinkingEnabled: true,
|
|||
|
|
expected: "claude-opus-4-6-thinking",
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
name: "thinking enabled - gemini model unchanged",
|
|||
|
|
mappedModel: "gemini-3-flash",
|
|||
|
|
thinkingEnabled: true,
|
|||
|
|
expected: "gemini-3-flash",
|
|||
|
|
},
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
for _, tt := range tests {
|
|||
|
|
t.Run(tt.name, func(t *testing.T) {
|
|||
|
|
result := applyThinkingModelSuffix(tt.mappedModel, tt.thinkingEnabled)
|
|||
|
|
if result != tt.expected {
|
|||
|
|
t.Errorf("applyThinkingModelSuffix(%q, %v) = %q, want %q",
|
|||
|
|
tt.mappedModel, tt.thinkingEnabled, result, tt.expected)
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
}
|
|||
|
|
}
|