package svc import ( "os" "testing" "img_infinite_canvas/internal/config" ) func TestNewImageGeneratorReturnsNilWithoutAPIKey(t *testing.T) { generator := newImageGenerator(config.Config{}) if generator != nil { t.Fatal("expected nil image generator without API key") } } func TestResolveImageAPIKeyUsesEnvBeforeConfig(t *testing.T) { t.Setenv("TEST_GPT_IMAGE_KEY", "env-key") key := resolveImageAPIKey(config.ImageGenerationConfig{ APIKeyEnv: "TEST_GPT_IMAGE_KEY", APIKey: "config-key", }) if key != "env-key" { t.Fatalf("expected env key, got %s", key) } } func TestResolveImageAPIKeyFallsBackToConfig(t *testing.T) { const envName = "TEST_GPT_IMAGE_KEY_EMPTY" if err := os.Unsetenv(envName); err != nil { t.Fatal(err) } key := resolveImageAPIKey(config.ImageGenerationConfig{ APIKeyEnv: envName, APIKey: "config-key", }) if key != "config-key" { t.Fatalf("expected config key, got %s", key) } }