You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Blazor_SAE/VeraxShield/TestVeraxShield/UtlisateurFactoryTests.cs

55 lines
1.6 KiB

using Moq;
namespace TestVeraxShield.factoriesTests;
using Xunit;
using VeraxShield.factories;
using VeraxShield.composants.formulaires.modeles;
using VeraxShield.modele.utilisateurs;
public class UtilisateursFactoryTests
{
[Fact]
public void ConvertsToUtilisateur_WithNewPasswordHashing()
{
// Arrange
var modele = new FormulaireAjoutModele { Mdp = "newPassword", /* other properties */ };
// Act
var utilisateur = UtilisateursFactory.toUtilisateur(modele);
// Assert
Assert.NotEqual("newPassword", utilisateur.Mdp);
}
[Fact]
public void ConvertsToModele_FromUtilisateur()
{
// Arrange
var utilisateur = new Utilisateur("pseudo", "nom", "prenom", "role", "mdp", "mail", false);
// Act
var modele = UtilisateursFactory.toModele(utilisateur);
// Assert
}
[Fact]
public void ToUtilisateur_HashesPassword_WhenSelectedUserPasswordDiffers()
{
// Setup the context or service to provide a selected user with a different password
var selectedUserService = new Mock<ISelectedUserService>();
selectedUserService.Setup(s => s.GetSelectedUser()).Returns(new Utilisateur { Mdp = "differentPassword" });
UtilisateursFactory.SetSelectedUserService(selectedUserService.Object);
var modele = new FormulaireAjoutModele("user", "First", "Last", "email@test.com", "newPassword", "role", false);
// Act
var result = UtilisateursFactory.toUtilisateur(modele);
// Assert
Assert.NotEqual("newPassword", result.Mdp); // Assert password is hashed
}
}