diff --git a/src/Yavsc.Blogs.Tests/Fixtures/MappedClaimsBlogsWebServerFixture.cs b/src/Yavsc.Blogs.Tests/Fixtures/MappedClaimsBlogsWebServerFixture.cs index 7311ce042..ab4418c57 100644 --- a/src/Yavsc.Blogs.Tests/Fixtures/MappedClaimsBlogsWebServerFixture.cs +++ b/src/Yavsc.Blogs.Tests/Fixtures/MappedClaimsBlogsWebServerFixture.cs @@ -39,6 +39,18 @@ public sealed class MappedClaimsBlogsWebServerFixture : IDisposable, IBackendFix opt.UseInMemoryDatabase("Yavsc.Blogs.Tests.MappedClaims", _inMemoryRoot)); builder.Services.AddSingleton(new NoopFileSystemAuthManager()); + + // BlogSpotService's constructor throws InvalidOperationException + // ("SiteSettings.Blog is not configured.") when Blog is null, so + // every request hitting BlogApiController would 500 resolving the + // service. These tests never upload files (JSON-only POST/PUT), so + // AttachFiles short-circuits — but the service still has to be + // constructible. Point Blog at a per-run temp directory, mirroring + // BlogsWebServerFixture. + builder.Services.Configure(s => + { + s.Blog = Path.Combine(Path.GetTempPath(), "postit-blogs-mappedclaims-" + Guid.NewGuid().ToString("N")); + }); builder.Services.AddScoped(); builder.Services.AddScoped(); builder.Services.AddControllers()