Files
Assistant/modules/capability/domain/intelligence_test.go

26 lines
992 B
Go

package domain_test
import (
"git.cin.su/m/Assistant/contracts/capability"
"testing"
)
func TestStrategyUsesRiskAndCostSignals(t *testing.T) {
if got := (capability.StrategyRequest{RequiredQuality: 400, CostBudgetMicros: 10}).Select().Path; got != capability.PathRule {
t.Fatal(got)
}
if got := (capability.StrategyRequest{RiskClass: "HIGH", CostOfError: 900}).Select(); got.Path != capability.PathStrongLocal || !got.Escalate {
t.Fatalf("%#v", got)
}
}
func TestUnavailableReflexFallsBackThroughSkillToReasoning(t *testing.T) {
request := capability.StrategyRequest{PreferLowLatency: true, RequiredQuality: 700}
if got := request.SelectEligible(capability.StrategyEligibility{SkillEligible: true}); got.Path != capability.PathSkill {
t.Fatalf("expected Skill fallback, got %#v", got)
}
if got := request.SelectEligible(capability.StrategyEligibility{}); got.Path != capability.PathSmallLocal || !got.Escalate {
t.Fatalf("expected reasoning fallback, got %#v", got)
}
}