nub/internal/llm/registry/registry_test.go
Tom a97013d876 initial commit
- v 0.1.0 siehe CHANGELOG.md
2026-07-25 11:08:01 +02:00

35 lines
1.2 KiB
Go

package registry
import "testing"
// TestDefaultCaps_UnknownModelStillReportsUsage sichert einen konkreten Bug
// ab: für unbekannte Modelle (z.B. neue OpenAI-Modelle, die noch nicht in
// `known` stehen) darf UsageInStream nicht fälschlich auf false fallen —
// sonst bleiben Token-/Cache-Zahlen in der UI dauerhaft bei 0, obwohl der
// Endpoint stream_options.include_usage längst unterstützt.
func TestDefaultCaps_UnknownModelStillReportsUsage(t *testing.T) {
caps := DefaultCaps("gpt-5-nano") // absichtlich nicht in der known-Tabelle
if !caps.UsageInStream {
t.Error("unknown model should default to UsageInStream=true, not silently disable usage reporting")
}
}
func TestDefaultCaps_KnownModelUsesTable(t *testing.T) {
caps := DefaultCaps("gpt-4o")
if caps.MaxContext != 128000 {
t.Errorf("MaxContext = %d, want 128000 for a known model", caps.MaxContext)
}
}
func TestApply_OverridesOnlySetFields(t *testing.T) {
base := DefaultCaps("gpt-4o")
disabled := false
got := Apply(base, CapsOverride{UsageInStream: &disabled})
if got.UsageInStream {
t.Error("explicit override to false must take effect")
}
if got.MaxContext != base.MaxContext {
t.Error("fields not present in the override must stay untouched")
}
}