Added tests to cover the condition if the password isn't equals to the user's password
continuous-integration/drone/push Build is passing Details

pull/32/head
ImNicolasTheDev 2 years ago
parent 696e524303
commit 2b6e5b2992

@ -1,119 +1,136 @@
using Model;
namespace Tests
{
public class User_UT
{
[Theory]
[MemberData(nameof(ValidData_NoList))]
public void TestConstructorWithValidData_NoList(string pseudo, string nom, string prenom, string mdp)
using Model;
namespace Tests
{
public class User_UT
{
[Theory]
[MemberData(nameof(ValidData_NoList))]
public void TestConstructorWithValidData_NoList(string pseudo, string nom, string prenom, string mdp)
{
User u = new User(pseudo, nom, prenom, mdp);
Assert.Equal(pseudo, u.Pseudo);
Assert.Equal(nom, u.Nom);
Assert.Equal(prenom, u.Prenom);
Assert.True(u.verifyPssw(mdp));
}
[Theory]
[MemberData(nameof(InvalidData_NoList))]
public void TestConstructorWithNumbers_NoList(string pseudo, string nom, string prenom, string mdp)
Assert.True(u.verifyPssw(mdp));
}
[Theory]
[MemberData(nameof(InvalidData_NoList))]
public void TestConstructorWithNumbers_NoList(string pseudo, string nom, string prenom, string mdp)
{
Assert.Throws<FormatException>(() => new User(pseudo, nom, prenom, mdp));
}
[Theory]
[MemberData(nameof(WrongPasswordData_NoList))]
public void TestConstructorWrongPassword_NoList(string pseudo, string nom, string prenom, string mdp)
{
Assert.Throws<FormatException>(() => new User(pseudo, nom, prenom, mdp));
}
[Theory]
[MemberData(nameof(MissingData_NoList))]
public void TestConstructorWithMissingData_NoList(string pseudo, string nom, string prenom, string mdp)
User u = new User(pseudo, nom, prenom, "LE VRAI MOT DE PASSE");
// Vérifie si le mot de passe ne correspond pas au mot de passe "LE VRAI MOT DE PASSE"
Assert.False(u.verifyPssw(mdp));
}
[Theory]
[MemberData(nameof(MissingData_NoList))]
public void TestConstructorWithMissingData_NoList(string pseudo, string nom, string prenom, string mdp)
{
Assert.Throws<ArgumentException>(() => new User(pseudo, nom, prenom, mdp));
Assert.Throws<ArgumentException>(() => new User(pseudo, nom, prenom, mdp));
}
/*[Theory]
[MemberData(nameof(DataWithList))]
public void TestConstructorWithList(string pseudo, string nom, string prenom, string mdp, List<Monstre> monstresVus)
{
if (Assert.Throws<ArgumentException>(() => new User(pseudo, nom, prenom, mdp, monstresVus)) == null ) {
return;
}
User u = new User(pseudo, nom, prenom, mdp, monstresVus);
Assert.Equal(pseudo, u.Pseudo);
Assert.Equal(nom, u.Nom);
Assert.Equal(prenom, u.Prenom);
Assert.True(u.verifyPssw(mdp));
Assert.Equal(monstresVus, u.monstresDejaVu);
}
public static IEnumerable<object[]> DataWithList =>
new List<object[]>
{
new object[] { "Pseudo", "Nom", "Prenom", "Mdp", new List<Monstre> { new Monstre(1, "Poule",
"Je suis un animal présent un peu partout, sauf dans le desert car il fait beaucoup trop chaud. Mais j'aime beaucoup la jungle !",
new List<string> { "Quand une poule est tuée, il y a 3.12% de chance que la poule laisse tomber un oeuf " },
new List<string> { "Apparence1", "App2", "App3" } ),
new Monstre(2, "Mouton",
"Je suis présent un peu partout, sauf dnas le desert.",
new List<string> { "Avec une cisaille il est possible de raser la laine d'un mouton, il se retrouvera sans laine.", "Pour faire repousser la laine d'un mouton, il faut qu'il ait de l'herbe sous ses pattes pour qu'il puisse manger. Une fois mangé, la laine du mouton repousse instantanément !" },
new List<string> { "Apparence1", "App2", "App3" } )} },
new object[] { "", "", "", "", new List<Monstre> { new Monstre(1, "Poule",
"Je suis un animal présent un peu partout, sauf dans le desert car il fait beaucoup trop chaud. Mais j'aime beaucoup la jungle !",
new List<string> { "Quand une poule est tuée, il y a 3.12% de chance que la poule laisse tomber un oeuf " },
new List<string> { "Apparence1", "App2", "App3" } ),
new Monstre(2, "Mouton",
"Je suis présent un peu partout, sauf dnas le desert.",
new List<string> { "Avec une cisaille il est possible de raser la laine d'un mouton, il se retrouvera sans laine.", "Pour faire repousser la laine d'un mouton, il faut qu'il ait de l'herbe sous ses pattes pour qu'il puisse manger. Une fois mangé, la laine du mouton repousse instantanément !" },
new List<string> { "Apparence1", "App2", "App3" } )} },
new object[] { "", "", "", "", new List<Monstre>() },
new object[] { "Pseudo", "", "", "", new List<Monstre>() },
new object[] { "Pseudo", "Nom", "", "", new List<Monstre>() },
new object[] { "Pseudo", "Nom", "Prenom", "", new List<Monstre>() },
new object[] { "Pseudo", "Nom", "Prenom", "Mdp", new List<Monstre>() },
new object[] { 0, "Nom", "Prenom", "Mdp", new List<Monstre>() },
new object[] { "Pseudo", 0, "Prenom", "Mdp", new List<Monstre>() },
new object[] { "Pseudo", "Nom", 0, "Mdp", new List<Monstre>() },
new object[] { "Pseudo", "Nom", "Prenom", 0, new List<Monstre>() },
new object[] { 1, 12, 123, 1234, 12345 }
/*[Theory]
[MemberData(nameof(DataWithList))]
public void TestConstructorWithList(string pseudo, string nom, string prenom, string mdp, List<Monstre> monstresVus)
{
if (Assert.Throws<ArgumentException>(() => new User(pseudo, nom, prenom, mdp, monstresVus)) == null ) {
return;
}
User u = new User(pseudo, nom, prenom, mdp, monstresVus);
Assert.Equal(pseudo, u.Pseudo);
Assert.Equal(nom, u.Nom);
Assert.Equal(prenom, u.Prenom);
Assert.True(u.verifyPssw(mdp));
Assert.Equal(monstresVus, u.monstresDejaVu);
}
public static IEnumerable<object[]> DataWithList =>
new List<object[]>
{
new object[] { "Pseudo", "Nom", "Prenom", "Mdp", new List<Monstre> { new Monstre(1, "Poule",
"Je suis un animal présent un peu partout, sauf dans le desert car il fait beaucoup trop chaud. Mais j'aime beaucoup la jungle !",
new List<string> { "Quand une poule est tuée, il y a 3.12% de chance que la poule laisse tomber un oeuf " },
new List<string> { "Apparence1", "App2", "App3" } ),
new Monstre(2, "Mouton",
"Je suis présent un peu partout, sauf dnas le desert.",
new List<string> { "Avec une cisaille il est possible de raser la laine d'un mouton, il se retrouvera sans laine.", "Pour faire repousser la laine d'un mouton, il faut qu'il ait de l'herbe sous ses pattes pour qu'il puisse manger. Une fois mangé, la laine du mouton repousse instantanément !" },
new List<string> { "Apparence1", "App2", "App3" } )} },
new object[] { "", "", "", "", new List<Monstre> { new Monstre(1, "Poule",
"Je suis un animal présent un peu partout, sauf dans le desert car il fait beaucoup trop chaud. Mais j'aime beaucoup la jungle !",
new List<string> { "Quand une poule est tuée, il y a 3.12% de chance que la poule laisse tomber un oeuf " },
new List<string> { "Apparence1", "App2", "App3" } ),
new Monstre(2, "Mouton",
"Je suis présent un peu partout, sauf dnas le desert.",
new List<string> { "Avec une cisaille il est possible de raser la laine d'un mouton, il se retrouvera sans laine.", "Pour faire repousser la laine d'un mouton, il faut qu'il ait de l'herbe sous ses pattes pour qu'il puisse manger. Une fois mangé, la laine du mouton repousse instantanément !" },
new List<string> { "Apparence1", "App2", "App3" } )} },
new object[] { "", "", "", "", new List<Monstre>() },
new object[] { "Pseudo", "", "", "", new List<Monstre>() },
new object[] { "Pseudo", "Nom", "", "", new List<Monstre>() },
new object[] { "Pseudo", "Nom", "Prenom", "", new List<Monstre>() },
new object[] { "Pseudo", "Nom", "Prenom", "Mdp", new List<Monstre>() },
new object[] { 0, "Nom", "Prenom", "Mdp", new List<Monstre>() },
new object[] { "Pseudo", 0, "Prenom", "Mdp", new List<Monstre>() },
new object[] { "Pseudo", "Nom", 0, "Mdp", new List<Monstre>() },
new object[] { "Pseudo", "Nom", "Prenom", 0, new List<Monstre>() },
new object[] { 1, 12, 123, 1234, 12345 }
};*/
//Jeu de données valide
public static IEnumerable<object[]> ValidData_NoList => new List<object[]>{
public static IEnumerable<object[]> ValidData_NoList => new List<object[]>{
new object[] { "Pseudo", "Nom", "Prenom", "Mdp123456" },
new object[] { "Pseudo", "Nom", "Prenom", 123456 }
};
//Jeu de données invalide car paramètres seulement composés de nombres
public static IEnumerable<object[]> InvalidData_NoList => new List<object[]>{
new object[] { 5, "Nom", "Prenom", "Mdp" },
new object[] { "Pseudo", 12, "Prenom", "Mdp" },
new object[] { "Pseudo", "Nom", 22, "Mdp" },
public static IEnumerable<object[]> InvalidData_NoList => new List<object[]>{
new object[] { 5, "Nom", "Prenom", "Mdp" },
new object[] { "Pseudo", 12, "Prenom", "Mdp" },
new object[] { "Pseudo", "Nom", 22, "Mdp" },
new object[] { 1, 12, 123, 1234 }
};
//Jeu de données avec paramètres manquants
public static IEnumerable<object[]> MissingData_NoList => new List<object[]>{
//Test de toutes les possibilités
new object[] { "", "", "", "" },
new object[] { "Pseudo", "", "", "" },
new object[] { "", "Nom", "", "" },
new object[] { "Pseudo", "Nom", "", "" },
new object[] { "", "", "Prenom", "" },
new object[] { "Pseudo", "", "Prenom", "" },
new object[] { "", "Nom", "Prenom", "" },
new object[] { "Prenom", "Nom", "Prenom", "" },
new object[] { "", "", "", "Mdp" },
new object[] { "Pseudo", "", "", "Mdp" },
new object[] { "", "Nom", "", "Mdp" },
new object[] { "Pseudo", "Nom", "", "Mdp" },
new object[] { "", "", "Prenom", "Mdp" },
new object[] { "Pseudo", "", "Prenom", "Mdp" },
new object[] { "", "Nom", "Prenom", "Mdp" }
};
}
};
//Jeu de données avec mot de passe erroné
public static IEnumerable<object[]> WrongPasswordData_NoList => new List<object[]>{
new object[] { "Moi", "Nom", "Prenom", "Mdp" },
new object[] { "Nikoala", "Nom", "Prenom", "Nikoala" },
new object[] { "osuplayer123", "Nom", "Prenom", "osu727" },
new object[] { "Moi", "Moi", "Moi", "Moi"}
};
//Jeu de données avec paramètres manquants
public static IEnumerable<object[]> MissingData_NoList => new List<object[]>{
//Test de toutes les possibilités
new object[] { "", "", "", "" },
new object[] { "Pseudo", "", "", "" },
new object[] { "", "Nom", "", "" },
new object[] { "Pseudo", "Nom", "", "" },
new object[] { "", "", "Prenom", "" },
new object[] { "Pseudo", "", "Prenom", "" },
new object[] { "", "Nom", "Prenom", "" },
new object[] { "Prenom", "Nom", "Prenom", "" },
new object[] { "", "", "", "Mdp" },
new object[] { "Pseudo", "", "", "Mdp" },
new object[] { "", "Nom", "", "Mdp" },
new object[] { "Pseudo", "Nom", "", "Mdp" },
new object[] { "", "", "Prenom", "Mdp" },
new object[] { "Pseudo", "", "Prenom", "Mdp" },
new object[] { "", "Nom", "Prenom", "Mdp" }
};
}
}
Loading…
Cancel
Save