From 48c42598449c0c72a644ad7a2f2cc30f3082cad5 Mon Sep 17 00:00:00 2001 From: Sipke Schoorstra Date: Sun, 31 May 2026 14:44:34 +0200 Subject: [PATCH] Pin test environment to Production in IngressRateLimitingTests to stabilize assertions. --- .../RateLimiting/IngressRateLimitingTests.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/test/unit/Elsa.Http.UnitTests/RateLimiting/IngressRateLimitingTests.cs b/test/unit/Elsa.Http.UnitTests/RateLimiting/IngressRateLimitingTests.cs index ec5eb2d7c..1c5f69571 100644 --- a/test/unit/Elsa.Http.UnitTests/RateLimiting/IngressRateLimitingTests.cs +++ b/test/unit/Elsa.Http.UnitTests/RateLimiting/IngressRateLimitingTests.cs @@ -7,6 +7,7 @@ using Microsoft.AspNetCore.RateLimiting; using Microsoft.AspNetCore.Routing; using Microsoft.AspNetCore.TestHost; using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Hosting; namespace Elsa.Http.UnitTests.RateLimiting; @@ -419,7 +420,10 @@ public class IngressRateLimitingTests private static WebApplicationBuilder CreateBuilder() { - var builder = WebApplication.CreateSlimBuilder(); + // Pin the environment to Production so the developer exception page does not swallow + // pipeline exceptions (e.g. an unregistered rate limiting policy) into a 500 response. + // Otherwise the FailsWhenPolicyIsNotRegistered assertion becomes environment-dependent and flaky. + var builder = WebApplication.CreateSlimBuilder(new WebApplicationOptions { EnvironmentName = Environments.Production }); builder.WebHost.UseTestServer(); return builder; }