返回 DeepSeek-Reasonix
reasoning_selection_test.go
根目录 / internal / acp / reasoning_selection_test.go
1 package acp
2
3 import "testing"
4
5 func TestModelDeltaClearsInheritedEffortAndKeepsExplicitNewSelection(t *testing.T) {
6 high, low := "high", "low"
7 p := SessionConfigStateParams{Model: "one", EffortOverride: &high}
8 (sessionConfigDelta{axis: "model", model: "one"}).applyTo(&p)
9 if p.EffortOverride == nil || *p.EffortOverride != high {
10 t.Fatal("same model lost intent")
11 }
12 (sessionConfigDelta{axis: "model", model: "two"}).applyTo(&p)
13 if p.EffortOverride != nil {
14 t.Fatal("different model inherited effort")
15 }
16 (sessionConfigDelta{axis: "thought_level", effortOverride: &low}).applyTo(&p)
17 if p.EffortOverride == nil || *p.EffortOverride != low {
18 t.Fatal("new model's explicit effort lost")
19 }
20 }
21
22 func TestQueuedModelReplacementDoesNotReviveOlderEffort(t *testing.T) {
23 high := "high"
24 for _, target := range []string{"one", "two"} {
25 queue := mergePendingConfig(nil, sessionConfigDelta{axis: "model", model: "one"})
26 queue = mergePendingConfig(queue, sessionConfigDelta{axis: "thought_level", effortOverride: &high})
27 queue = mergePendingConfig(queue, sessionConfigDelta{axis: "model", model: target})
28 params := SessionConfigStateParams{Model: "initial"}
29 for _, delta := range queue {
30 delta.applyTo(&params)
31 }
32 if params.Model != target || (params.EffortOverride != nil) != (target == "one") {
33 t.Fatalf("target %s: %+v", target, params)
34 }
35 }
36 }
37
37 lines GO