go-forge/config_test.go
Virgil 551a964fdb
All checks were successful
Security Scan / security (push) Successful in 9s
Test / test (push) Successful in 1m36s
refactor(ax): enforce v0.8.0 polish rules
Co-Authored-By: Virgil <virgil@lethean.io>
2026-03-29 23:39:24 +00:00

60 lines
1.3 KiB
Go

package forge
import (
"testing"
)
func TestResolveConfig_EnvOverrides_Good(t *testing.T) {
t.Setenv("FORGE_URL", "https://forge.example.com")
t.Setenv("FORGE_TOKEN", "env-token")
url, token, err := ResolveConfig("", "")
if err != nil {
t.Fatal(err)
}
if url != "https://forge.example.com" {
t.Errorf("got url=%q", url)
}
if token != "env-token" {
t.Errorf("got token=%q", token)
}
}
func TestResolveConfig_FlagOverridesEnv_Good(t *testing.T) {
t.Setenv("FORGE_URL", "https://env.example.com")
t.Setenv("FORGE_TOKEN", "env-token")
url, token, err := ResolveConfig("https://flag.example.com", "flag-token")
if err != nil {
t.Fatal(err)
}
if url != "https://flag.example.com" {
t.Errorf("got url=%q", url)
}
if token != "flag-token" {
t.Errorf("got token=%q", token)
}
}
func TestResolveConfig_DefaultURL_Good(t *testing.T) {
t.Setenv("FORGE_URL", "")
t.Setenv("FORGE_TOKEN", "")
url, _, err := ResolveConfig("", "")
if err != nil {
t.Fatal(err)
}
if url != DefaultURL {
t.Errorf("got url=%q, want %q", url, DefaultURL)
}
}
func TestNewForgeFromConfig_NoToken_Bad(t *testing.T) {
t.Setenv("FORGE_URL", "")
t.Setenv("FORGE_TOKEN", "")
_, err := NewForgeFromConfig("", "")
if err == nil {
t.Fatal("expected error for missing token")
}
}