summaryrefslogtreecommitdiff
path: root/internal/llm/openai_temp_test.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2025-09-17 22:49:13 +0300
committerPaul Buetow <paul@buetow.org>2025-09-17 22:49:13 +0300
commitd059ae333fa1c89cb58d7fb56ead79cdba15d5db (patch)
treeae65ad59c8590f71232a6abefee312b72ddf6d3e /internal/llm/openai_temp_test.go
parent88103657fb230bb41217a06aa5602ae23e7acb8b (diff)
chore(version): bump to v0.11.1 (gpt-5 defaults, timeouts, global stats, editor fix)v0.11.1
Diffstat (limited to 'internal/llm/openai_temp_test.go')
-rw-r--r--internal/llm/openai_temp_test.go43
1 files changed, 43 insertions, 0 deletions
diff --git a/internal/llm/openai_temp_test.go b/internal/llm/openai_temp_test.go
new file mode 100644
index 0000000..7615117
--- /dev/null
+++ b/internal/llm/openai_temp_test.go
@@ -0,0 +1,43 @@
+package llm
+
+import "testing"
+
+func TestNewFromConfig_DefaultTemp_ByModel(t *testing.T) {
+ // OpenAI, gpt-5.* → default temp 1.0 when not provided
+ cfg := Config{Provider: "openai", OpenAIModel: "gpt-5.0-preview"}
+ c, err := NewFromConfig(cfg, "key", "")
+ if err != nil {
+ t.Fatalf("new: %v", err)
+ }
+ oc, ok := c.(openAIClient)
+ if !ok {
+ t.Fatalf("expected openAIClient")
+ }
+ if oc.defaultTemperature == nil || *oc.defaultTemperature != 1.0 {
+ t.Fatalf("expected default temp 1.0 for gpt-5, got %#v", oc.defaultTemperature)
+ }
+ // OpenAI, gpt-4.* → default temp 0.2 when not provided
+ cfg2 := Config{Provider: "openai", OpenAIModel: "gpt-4.1"}
+ c2, err := NewFromConfig(cfg2, "key", "")
+ if err != nil {
+ t.Fatalf("new2: %v", err)
+ }
+ oc2 := c2.(openAIClient)
+ if oc2.defaultTemperature == nil || *oc2.defaultTemperature != 0.2 {
+ t.Fatalf("expected default temp 0.2 for gpt-4.*, got %#v", oc2.defaultTemperature)
+ }
+}
+
+func TestNewFromConfig_DefaultTemp_UpgradeWhenGpt5AndDefault02(t *testing.T) {
+ // Simulate app-default of 0.2 while selecting a gpt-5 model: should upgrade to 1.0
+ v := 0.2
+ cfg := Config{Provider: "openai", OpenAIModel: "gpt-5.0", OpenAITemperature: &v}
+ c, err := NewFromConfig(cfg, "key", "")
+ if err != nil {
+ t.Fatalf("new: %v", err)
+ }
+ oc := c.(openAIClient)
+ if oc.defaultTemperature == nil || *oc.defaultTemperature != 1.0 {
+ t.Fatalf("expected upgraded default temp 1.0 for gpt-5 with default 0.2, got %#v", oc.defaultTemperature)
+ }
+}