✅ Validation de l’email d’inscription ajoutée
All checks were successful
Dotnet build and test / build (pull_request) Successful in 4m53s
All checks were successful
Dotnet build and test / build (pull_request) Successful in 4m53s
Vvalidation au point le plus sûr : le modèle de formulaire, avec un garde-fou côté contrôleur pour normaliser la valeur avant création du compte. * Ajout de [EmailAddress] dans RegisterModel.cs * Nettoyage de model.Email avec Trim() avant le ModelState.IsValid dans AccountController.cs * Ajout d’un test de régression dans EMailling.cs Additionnellement, le job de test est corrigé pour laisser vivre le test en plateforme Android, hors CI
This commit is contained in:
parent
0bfe61cbb8
commit
6a6cc3a967
6 changed files with 37 additions and 6 deletions
|
|
@ -1,8 +1,10 @@
|
|||
using System.ComponentModel.DataAnnotations;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Yavsc.Interface;
|
||||
using Yavsc.Interfaces;
|
||||
using Yavsc.Org.Tests.Fakes;
|
||||
using Yavsc.ViewModels.Account;
|
||||
|
||||
namespace Yavsc.Org.Tests
|
||||
{
|
||||
|
|
@ -56,5 +58,27 @@ namespace Yavsc.Org.Tests
|
|||
Assert.Equal(_serverFixture.SiteSettings.Owner.EMail, client.LastSentMessage?.To.Mailboxes.First().Address);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void RegisterModel_rejects_invalid_email_format()
|
||||
{
|
||||
var model = new RegisterModel
|
||||
{
|
||||
UserName = "alice",
|
||||
Email = "this is not an email",
|
||||
Password = "Password123!",
|
||||
ConfirmPassword = "Password123!"
|
||||
};
|
||||
|
||||
var results = new List<ValidationResult>();
|
||||
var valid = Validator.TryValidateObject(
|
||||
model,
|
||||
new ValidationContext(model),
|
||||
results,
|
||||
validateAllProperties: true);
|
||||
|
||||
Assert.False(valid);
|
||||
Assert.Contains(results, r => r.MemberNames.Contains(nameof(RegisterModel.Email)));
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue