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.
55 lines
1.6 KiB
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
|
|
}
|
|
|
|
}
|