11package dmr
22
33import (
4- "reflect"
54 "testing"
65
7- latest "github.com/docker/cagent/pkg/config/v2"
86 "github.com/stretchr/testify/assert"
97 "github.com/stretchr/testify/require"
8+
9+ latest "github.com/docker/cagent/pkg/config/v2"
1010)
1111
1212func TestNewClientWithExplicitBaseURL (t * testing.T ) {
@@ -33,27 +33,19 @@ func TestNewClientWithWrongType(t *testing.T) {
3333
3434func TestBuildDockerConfigureArgs (t * testing.T ) {
3535 args := buildDockerModelConfigureArgs ("ai/qwen3:14B-Q6_K" , 8192 , []string {"--temp" , "0.7" , "--top-p" , "0.9" })
36- expected := []string {"model" , "configure" , "--context-size=8192" , "ai/qwen3:14B-Q6_K" , "--" , "--temp" , "0.7" , "--top-p" , "0.9" }
37- if ! reflect .DeepEqual (args , expected ) {
38- t .Fatalf ("unexpected args.\n expected: %#v\n actual: %#v" , expected , args )
39- }
36+
37+ assert .Equal (t , []string {"model" , "configure" , "--context-size=8192" , "ai/qwen3:14B-Q6_K" , "--" , "--temp" , "0.7" , "--top-p" , "0.9" }, args )
4038}
4139
4240func TestBuildRuntimeFlagsFromModelConfig_LlamaCpp (t * testing.T ) {
43- cfg := & latest.ModelConfig {
41+ flags := buildRuntimeFlagsFromModelConfig ( "llama.cpp" , & latest.ModelConfig {
4442 Temperature : 0.6 ,
4543 TopP : 0.95 ,
4644 FrequencyPenalty : 0.2 ,
4745 PresencePenalty : 0.1 ,
48- }
46+ })
4947
50- flags := buildRuntimeFlagsFromModelConfig ("llama.cpp" , cfg )
51-
52- // Order matters based on implementation
53- expected := []string {"--temp" , "0.6" , "--top-p" , "0.95" , "--frequency-penalty" , "0.2" , "--presence-penalty" , "0.1" }
54- if ! reflect .DeepEqual (flags , expected ) {
55- t .Fatalf ("unexpected runtime flags.\n expected: %#v\n actual: %#v" , expected , flags )
56- }
48+ assert .Equal (t , []string {"--temp" , "0.6" , "--top-p" , "0.95" , "--frequency-penalty" , "0.2" , "--presence-penalty" , "0.1" }, flags )
5749}
5850
5951func TestIntegrateFlagsWithProviderOptsOrder (t * testing.T ) {
@@ -71,10 +63,7 @@ func TestIntegrateFlagsWithProviderOptsOrder(t *testing.T) {
7163 merged := append (derived , []string {"--threads" , "6" }... )
7264
7365 args := buildDockerModelConfigureArgs ("ai/qwen3:14B-Q6_K" , cfg .MaxTokens , merged )
74- expected := []string {"model" , "configure" , "--context-size=4096" , "ai/qwen3:14B-Q6_K" , "--" , "--temp" , "0.6" , "--top-p" , "0.9" , "--threads" , "6" }
75- if ! reflect .DeepEqual (args , expected ) {
76- t .Fatalf ("unexpected configure args.\n expected: %#v\n actual: %#v" , expected , args )
77- }
66+ assert .Equal (t , []string {"model" , "configure" , "--context-size=4096" , "ai/qwen3:14B-Q6_K" , "--" , "--temp" , "0.6" , "--top-p" , "0.9" , "--threads" , "6" }, args )
7867}
7968
8069func TestMergeRuntimeFlagsPreferUser_WarnsAndPrefersUser (t * testing.T ) {
@@ -85,12 +74,8 @@ func TestMergeRuntimeFlagsPreferUser_WarnsAndPrefersUser(t *testing.T) {
8574 merged , warnings := mergeRuntimeFlagsPreferUser (derived , user )
8675
8776 // Expect 1 warnings for --temp overriding
88- if len (warnings ) != 1 {
89- t .Fatalf ("expected 1 warning1, got %d: %#v" , len (warnings ), warnings )
90- }
77+ require .Len (t , warnings , 1 )
78+
9179 // Derived conflicting flags should be dropped, user ones kept and appended
92- expected := []string {"--top-p" , "0.8" , "--temp" , "0.7" , "--threads" , "8" }
93- if ! reflect .DeepEqual (merged , expected ) {
94- t .Fatalf ("unexpected merged flags.\n expected: %#v\n actual: %#v" , expected , merged )
95- }
80+ assert .Equal (t , []string {"--top-p" , "0.8" , "--temp" , "0.7" , "--threads" , "8" }, merged )
9681}
0 commit comments