summaryrefslogtreecommitdiff
path: root/internal/hexailsp
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2025-09-08 12:02:40 +0300
committerPaul Buetow <paul@buetow.org>2025-09-08 12:02:40 +0300
commit75cf6abd55bfb60324fc47cf91eac08dbb8b87b4 (patch)
tree6ef90d8014fe4d9a757d3f7e95bf736b70e4c685 /internal/hexailsp
parent0dcf347c3fbc6e4ffb7e46294f5dd92dbbcd98ef (diff)
docs: move tmux documentation to its own file
Diffstat (limited to 'internal/hexailsp')
-rw-r--r--internal/hexailsp/run_more_test.go63
1 files changed, 32 insertions, 31 deletions
diff --git a/internal/hexailsp/run_more_test.go b/internal/hexailsp/run_more_test.go
index 01baa96..00b79c1 100644
--- a/internal/hexailsp/run_more_test.go
+++ b/internal/hexailsp/run_more_test.go
@@ -1,42 +1,43 @@
package hexailsp
import (
- "bytes"
- "io"
- "log"
- "testing"
+ "bytes"
+ "io"
+ "log"
+ "testing"
- "codeberg.org/snonux/hexai/internal/appconfig"
- "codeberg.org/snonux/hexai/internal/lsp"
+ "codeberg.org/snonux/hexai/internal/appconfig"
+ "codeberg.org/snonux/hexai/internal/lsp"
)
type recRunner struct{ ran bool }
+
func (r *recRunner) Run() error { r.ran = true; return nil }
func TestRunWithFactory_BuildsOptionsAndClient(t *testing.T) {
- var captured lsp.ServerOptions
- factory := func(r io.Reader, w io.Writer, logger *log.Logger, opts lsp.ServerOptions) ServerRunner {
- captured = opts
- return &recRunner{}
- }
- var in, out bytes.Buffer
- logger := log.New(&out, "", 0)
- cfg := appconfig.Load(logger)
- // Use ollama to avoid API keys
- cfg.Provider = "ollama"
- cfg.MaxTokens = 123
- cfg.PromptCodeActionRewriteSystem = "RSYS"
- cfg.PromptCodeActionRewriteUser = "RUSER"
- if err := RunWithFactory("", &in, &out, logger, cfg, nil, factory); err != nil {
- t.Fatalf("RunWithFactory error: %v", err)
- }
- if captured.MaxTokens != 123 {
- t.Fatalf("opts not applied: %+v", captured)
- }
- if captured.PromptRewriteSystem != "RSYS" || captured.PromptRewriteUser != "RUSER" {
- t.Fatalf("prompts not mapped: %+v", captured)
- }
- if captured.Client == nil {
- t.Fatalf("expected client to be constructed")
- }
+ var captured lsp.ServerOptions
+ factory := func(r io.Reader, w io.Writer, logger *log.Logger, opts lsp.ServerOptions) ServerRunner {
+ captured = opts
+ return &recRunner{}
+ }
+ var in, out bytes.Buffer
+ logger := log.New(&out, "", 0)
+ cfg := appconfig.Load(logger)
+ // Use ollama to avoid API keys
+ cfg.Provider = "ollama"
+ cfg.MaxTokens = 123
+ cfg.PromptCodeActionRewriteSystem = "RSYS"
+ cfg.PromptCodeActionRewriteUser = "RUSER"
+ if err := RunWithFactory("", &in, &out, logger, cfg, nil, factory); err != nil {
+ t.Fatalf("RunWithFactory error: %v", err)
+ }
+ if captured.MaxTokens != 123 {
+ t.Fatalf("opts not applied: %+v", captured)
+ }
+ if captured.PromptRewriteSystem != "RSYS" || captured.PromptRewriteUser != "RUSER" {
+ t.Fatalf("prompts not mapped: %+v", captured)
+ }
+ if captured.Client == nil {
+ t.Fatalf("expected client to be constructed")
+ }
}