fix(opencode): x-opencode-directory, Content-Length, warmup /api/model; serve без явного Env
This commit is contained in:
@@ -200,29 +200,19 @@ func atoiOrZero(s string) int {
|
||||
return n
|
||||
}
|
||||
|
||||
func TestServeCmd_SetsOpenCodeConfig(t *testing.T) {
|
||||
// serveCmd должен всегда передавать OPENCODE_CONFIG: без него serve может
|
||||
// не подхватить модель/провайдеров из глобального конфига.
|
||||
func TestServeCmd_NoCustomEnv(t *testing.T) {
|
||||
// serveCmd не должен задавать свой Env: serve наследует окружение родителя
|
||||
// и сам резолвит конфиг/БД/пароль как обычно.
|
||||
s := &Server{}
|
||||
s.defaults()
|
||||
cmd := s.serveCmd(context.Background())
|
||||
if cmd.Env == nil {
|
||||
t.Fatal("serveCmd: Env не задан")
|
||||
}
|
||||
prefix := "OPENCODE_CONFIG="
|
||||
path := ""
|
||||
for _, kv := range cmd.Env {
|
||||
if strings.HasPrefix(kv, prefix) {
|
||||
path = strings.TrimPrefix(kv, prefix)
|
||||
break
|
||||
if cmd.Env != nil {
|
||||
for _, kv := range cmd.Env {
|
||||
if strings.HasPrefix(kv, "OPENCODE_") {
|
||||
t.Errorf("serveCmd: не ожидал env %q", kv)
|
||||
}
|
||||
}
|
||||
}
|
||||
if path == "" {
|
||||
t.Fatal("serveCmd: OPENCODE_CONFIG не выставлен")
|
||||
}
|
||||
if want := s.ConfigPath; path != want {
|
||||
t.Errorf("OPENCODE_CONFIG = %q, want %q", path, want)
|
||||
}
|
||||
}
|
||||
|
||||
func TestServerCmd_CustomOpenCodeConfig(t *testing.T) {
|
||||
|
||||
Reference in New Issue
Block a user