Publish Docker image (Multi-arch) / Build & push (amd64) (push) Failing after 9m20s
Release (Linux, macOS, Windows) / Linux Release (push) Failing after 55m7s
Publish Docker image (Multi-arch) / Build & push (arm64) (push) Canceled after 0s
Release (Linux, macOS, Windows) / macOS Release (push) Canceled after 0s
Release (Linux, macOS, Windows) / Windows Release (push) Canceled after 0s
Publish Docker image (Multi-arch) / Create multi-arch manifests (push) Canceled after 0s
45 lines
1.5 KiB
Go
45 lines
1.5 KiB
Go
package model_setting
|
|
|
|
import (
|
|
"bytes"
|
|
"testing"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestShouldPreserveThinkingSuffixExactAndRegex(t *testing.T) {
|
|
settings := GetGlobalSettings()
|
|
original := append([]string(nil), settings.ThinkingModelBlacklist...)
|
|
t.Cleanup(func() { settings.ThinkingModelBlacklist = original })
|
|
|
|
assert.True(t, ShouldPreserveThinkingSuffix("kimi-k2-thinking"))
|
|
assert.True(t, ShouldPreserveThinkingSuffix("moonshotai/kimi-k2-thinking"))
|
|
assert.False(t, ShouldPreserveThinkingSuffix("m@sha256:abc"))
|
|
|
|
settings.ThinkingModelBlacklist = []string{
|
|
"kimi-k2-thinking",
|
|
"re:[",
|
|
"re:",
|
|
"re:.*@sha256:.*",
|
|
}
|
|
|
|
var logged bytes.Buffer
|
|
previous := gin.DefaultErrorWriter
|
|
gin.DefaultErrorWriter = &logged
|
|
t.Cleanup(func() { gin.DefaultErrorWriter = previous })
|
|
|
|
assert.True(t, ShouldPreserveThinkingSuffix("kimi-k2-thinking"))
|
|
assert.True(t, ShouldPreserveThinkingSuffix("m@sha256:abc"))
|
|
assert.False(t, ShouldPreserveThinkingSuffix("m@sha256"))
|
|
assert.False(t, ShouldPreserveThinkingSuffix("qwen3-max@thinking:on"))
|
|
require.Contains(t, logged.String(), `invalid thinking_model_blacklist regex "re:["`)
|
|
require.Contains(t, logged.String(), `invalid thinking_model_blacklist regex "re:"`)
|
|
|
|
settings.ThinkingModelBlacklist = []string{"re:^beta@"}
|
|
assert.False(t, ShouldPreserveThinkingSuffix("m@sha256:abc"))
|
|
assert.True(t, ShouldPreserveThinkingSuffix("beta@sha256:abc"))
|
|
assert.False(t, ShouldPreserveThinkingSuffix("alpha@sha256:abc"))
|
|
}
|