yavsc/src/Yavsc.Org.Tests
Lum 4198e4dcf2 Blog: render user avatar through a null-safe helper
GET /BlogSpot/Details/1 retournait 500 (avec un 500-sur-500 sur
la page d'erreur elle-même) parce que DisplayTemplates
/ApplicationUser.cshtml faisait `var avuri = "/Avatars/" +
Model.UserName + ".s.png"` : avec <Nullable>enable</Nullable>,
Razor émet un null-check implicite sur Model.UserName et lève
NullReferenceException quand l'auteur n'a pas de UserName
posé (donnée héritée, user partiellement initialisé).

- UserDisplayHelpers.AvatarSrc : helper statique pur dans
  Yavsc.Abstract.Identity qui retourne
  YavscConstants.DefaultAvatar pour user null / UserName vide
  ou whitespace, et un path /avatars/<name>.s.png sinon.
- ApplicationUser.cshtml : utilise le helper.
- Tests : 4 cas (null, vide, whitespace, valide) dans
  Yavsc.Org.Tests/NonRegression.

Bonus : le path d'avatar passe de "/Avatars/" (S majuscule,
ne résolvait pas dans le middleware de fichiers statiques) à
YavscConstants.AvatarsPath ("/avatars" minuscule), pour fermer
l'autre trou que centraliser le calcul permettait de fixer
proprement.
2026-07-11 19:41:09 +01:00
..
Controllers refactor: extract WebHostFixture + TestAuthPolicyProvider to shared lib 2026-07-06 21:33:57 +01:00
Fakes Introduce Yavsc.Interfaces.ISmtpClient and a recording test fake 2026-06-22 02:09:02 +01:00
Mandatory refactoring 2026-06-19 19:59:15 +01:00
NonRegression Blog: render user avatar through a null-safe helper 2026-07-11 19:41:09 +01:00
Resources Relocate test project: test/yavscTests -> src/Yavsc.Org.Tests 2026-06-19 17:52:54 +01:00
Smoke tests: smoke tests for Account and Blog BCs 2026-06-27 21:03:16 +01:00
appsettings.json Relocate test project: test/yavscTests -> src/Yavsc.Org.Tests 2026-06-19 17:52:54 +01:00
ComputeKidTests.cs test(yavsc.org): cover the kid derivation in ComputeKid 2026-07-09 20:28:58 +01:00
Directory.Packages.props refactor: extract WebHostFixture + TestAuthPolicyProvider to shared lib 2026-07-06 21:33:57 +01:00
DumpHtml.cs refactoring 2026-06-19 19:59:15 +01:00
EstimateSignatureFileHelperTests.cs feat(api): POST /api/bill/estimate/{id}/sign — JSON signature capture 2026-07-04 15:47:55 +01:00
StaticAssetsPathsTests.cs fix(client-controller): single constructor with IHtmlLocalizer 2026-06-21 21:14:20 +01:00
test.runsettings fix(client-controller): single constructor with IHtmlLocalizer 2026-06-21 21:14:20 +01:00
TestUserMiddleware.cs refactor: extract WebHostFixture + TestAuthPolicyProvider to shared lib 2026-07-06 21:33:57 +01:00
TestUserStartupFilter.cs test(client): refactor InjectTestUser as a real IMiddleware 2026-06-21 21:24:44 +01:00
TestWebApplicationFactory.cs refactor: extract WebHostFixture + TestAuthPolicyProvider to shared lib 2026-07-06 21:33:57 +01:00
WebServerFixture.cs refactor: extract WebHostFixture + TestAuthPolicyProvider to shared lib 2026-07-06 21:33:57 +01:00
xunit.runner.json Relocate test project: test/yavscTests -> src/Yavsc.Org.Tests 2026-06-19 17:52:54 +01:00
Yavsc.Org.Tests.csproj refactor: extract WebHostFixture + TestAuthPolicyProvider to shared lib 2026-07-06 21:33:57 +01:00