Release / update-version (push) Has been cancelled
Release / build-frontend (push) Has been cancelled
Release / release (push) Has been cancelled
Release / sync-version-file (push) Has been cancelled
CI / shell (push) Canceled after 0s
CI / test (push) Canceled after 0s
CI / frontend (push) Canceled after 0s
CI / golangci-lint (push) Canceled after 0s
Security Scan / backend-security (push) Canceled after 0s
Security Scan / frontend-security (push) Canceled after 0s
57 lines
1.5 KiB
Go
57 lines
1.5 KiB
Go
//go:build unit
|
|
|
|
package service
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestHasCompactionTriggerInInput_DetectsCompactSignal(t *testing.T) {
|
|
body := []byte(`{
|
|
"model":"gpt-5.5",
|
|
"stream":true,
|
|
"input":[
|
|
{"type":"message","role":"user","content":"hello"},
|
|
{"type":"compaction_trigger"}
|
|
]
|
|
}`)
|
|
require.True(t, HasCompactionTriggerInInput(body))
|
|
}
|
|
|
|
func TestHasCompactionTriggerInInput_NoTrigger(t *testing.T) {
|
|
body := []byte(`{
|
|
"model":"gpt-5.5",
|
|
"input":[
|
|
{"type":"message","role":"user","content":"hello"}
|
|
]
|
|
}`)
|
|
require.False(t, HasCompactionTriggerInInput(body))
|
|
}
|
|
|
|
func TestHasCompactionTriggerInInput_EmptyInput(t *testing.T) {
|
|
body := []byte(`{"model":"gpt-5.5","input":[]}`)
|
|
require.False(t, HasCompactionTriggerInInput(body))
|
|
}
|
|
|
|
func TestHasCompactionTriggerInInput_NoInputField(t *testing.T) {
|
|
body := []byte(`{"model":"gpt-5.5"}`)
|
|
require.False(t, HasCompactionTriggerInInput(body))
|
|
}
|
|
|
|
func TestHasCompactionTriggerInInput_EmptyBody(t *testing.T) {
|
|
require.False(t, HasCompactionTriggerInInput(nil))
|
|
require.False(t, HasCompactionTriggerInInput([]byte{}))
|
|
}
|
|
|
|
func TestHasCompactionTriggerInInput_StringInput(t *testing.T) {
|
|
body := []byte(`{"model":"gpt-5.5","input":"compaction_trigger"}`)
|
|
require.False(t, HasCompactionTriggerInInput(body))
|
|
}
|
|
|
|
func TestHasCompactionTriggerInInput_CompactTriggerOnly(t *testing.T) {
|
|
body := []byte(`{"model":"gpt-5.5","input":[{"type":"compaction_trigger"}]}`)
|
|
require.True(t, HasCompactionTriggerInInput(body))
|
|
}
|