package serviceboot import ( "encoding/json" "net/http" "net/http/httptest" "testing" "github.com/stretchr/testify/require" ) func TestRegisterHealth(t *testing.T) { app := NewFiberApp(Config{AppName: "test-service"}) RegisterHealth(app, "svc") req := httptest.NewRequest(http.MethodGet, "/health", nil) resp, err := app.Test(req) require.NoError(t, err) defer resp.Body.Close() var body map[string]string require.NoError(t, json.NewDecoder(resp.Body).Decode(&body)) require.Equal(t, "healthy", body["status"]) require.Equal(t, "svc", body["service"]) } func TestListenAddressFromEnv(t *testing.T) { t.Setenv("SERVICE_PORT", "9090") require.Equal(t, ":9090", ListenAddress("SERVICE_PORT", 8080)) } func TestListenAddressFallback(t *testing.T) { t.Setenv("SERVICE_PORT", "bad") require.Equal(t, ":8080", ListenAddress("SERVICE_PORT", 8080)) } func TestListenAddressOutOfRangeFallback(t *testing.T) { t.Setenv("SERVICE_PORT", "70000") require.Equal(t, ":8080", ListenAddress("SERVICE_PORT", 8080)) }