From 6aed54d13f1684a991cdc160379053189a189d07 Mon Sep 17 00:00:00 2001 From: Nicolas BLONDEAU Date: Tue, 16 May 2023 15:24:23 +0200 Subject: [PATCH] Tests modifications Stub, test fonctions persistance et moidification bug xml -> ajout de l'ordre des attributs des classes User et Monstre --- Sources/Modèle/Monstre.cs | 70 +++++++++++++++++------------ Sources/Modèle/User.cs | 13 ++++-- Sources/Persistance/LoaderStub.cs | 7 ++- Sources/Persistance/saves/users.xml | 48 +++++++++++++++----- 4 files changed, 94 insertions(+), 44 deletions(-) diff --git a/Sources/Modèle/Monstre.cs b/Sources/Modèle/Monstre.cs index aafc51b..1c087aa 100644 --- a/Sources/Modèle/Monstre.cs +++ b/Sources/Modèle/Monstre.cs @@ -1,41 +1,53 @@ using System.ComponentModel; using System.Reflection.Metadata; +using System.Runtime.Serialization; -namespace Model; - -public class Monstre +namespace Model { - public int Id { get; set; } - public string Name { get; set; } - public string Dangerosite { get; private init; } + + [DataContract] + public class Monstre + { + [DataMember(Order = 1)] + public int Id { get; set; } + + [DataMember(Order = 2)] + public string Name { get; set; } + + [DataMember(Order = 3)] + public string Dangerosite { get; private init; } //EN FAIT IL FAUDRAIT FAIRE UN ENUM DU TYPE DE DANGEROSITÉ, pour rajouter lors de //l'affichage de la liste des monstres une couleur selon ça, //genre rouge dangereux, violet hyper dangereux, et vert passif - public string Description { get; set; } - - - public List CharacteristicsList - { - get; init; - } - - public List AppearanceList - { - get; init; - } + [DataMember(Order = 4)] + public string Description { get; set; } - public Monstre(int id, string name, string danger, string desc, List characList, List appearList) - { - Id = id; - Name = name; - Dangerosite = danger; - Description = desc; - CharacteristicsList = characList; - AppearanceList = appearList; - if (string.IsNullOrWhiteSpace(Name) || string.IsNullOrWhiteSpace(Description) || string.IsNullOrWhiteSpace(danger)) + [DataMember(Order = 5)] + public List CharacteristicsList + { + get; init; + } + + [DataMember(Order = 6)] + public List AppearanceList { - throw new ArgumentException("Un monstre doit avoir un nom, une description et une dangerosité!"); + get; init; + } + + public Monstre(int id, string name, string danger, string desc, List characList, List appearList) + { + Id = id; + Name = name; + Dangerosite = danger; + Description = desc; + CharacteristicsList = characList; + AppearanceList = appearList; + if (string.IsNullOrWhiteSpace(Name) || string.IsNullOrWhiteSpace(Description) || string.IsNullOrWhiteSpace(danger)) + { + throw new ArgumentException("Un monstre doit avoir un nom, une description et une dangerosité!"); + } } } -} \ No newline at end of file +} + diff --git a/Sources/Modèle/User.cs b/Sources/Modèle/User.cs index 85977e6..590aab8 100644 --- a/Sources/Modèle/User.cs +++ b/Sources/Modèle/User.cs @@ -18,14 +18,19 @@ namespace Model [DataContract] public class User { - [DataMember] + [DataMember(Order = 3)] public string Pseudo { get; private set; } - [DataMember] + + [DataMember(Order = 1)] public string Nom { get; private set; } - [DataMember] + + [DataMember(Order = 2)] public string Prenom { get; private set; } - [DataMember] + + [DataMember(Order = 4)] private string Mdp { get; set; } + + [DataMember] public List? monstresDejaVu { get; private set; } diff --git a/Sources/Persistance/LoaderStub.cs b/Sources/Persistance/LoaderStub.cs index 259ebf1..878cd0b 100644 --- a/Sources/Persistance/LoaderStub.cs +++ b/Sources/Persistance/LoaderStub.cs @@ -20,7 +20,12 @@ namespace Persistance List lu = new List(); lu.Add(new User("DedeDu42", "dede", "dodo", "mdp", new List { })); lu.Add(new User("Moi", "Monchanin", "Liam", "feur", new List { })); - lu.Add(new User("Nikoala", "Blondeau", "Nicolas", "niblondeau", new List { })); + lu.Add(new User("Nikoala", "Blondeau", "Nicolas", "niblondeau", new List { + new Monstre(2, + "Mouton", "passif", "Je suis présent un peu partout, sauf dnas le desert.", + new List { "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 l'herbe mangée, la laine repousse instantanément !" }, + new List { "Apparence1", "App2", "App3" }) })); + lu.Add(new User("Yadoumir", "Doumir", "Yannis", "mdp", new List { })); lu.Add(new User("osuplayer123", "Bonetti", "Martin", "oSu!727", new List { })); return lu; diff --git a/Sources/Persistance/saves/users.xml b/Sources/Persistance/saves/users.xml index 8536d7a..a9575d3 100644 --- a/Sources/Persistance/saves/users.xml +++ b/Sources/Persistance/saves/users.xml @@ -1,38 +1,66 @@ - mdp + dede dodo DedeDu42 - + mdp - feur + Monchanin Liam Moi - + feur - niblondeau + Blondeau Nicolas Nikoala - + niblondeau - mdp + Doumir Yannis Yadoumir - + mdp - oSu!727 + Bonetti Martin osuplayer123 - + oSu!727 + + + + PasMonchanin + PasMoi + PasLiam + pasfeur + + + + PasMonchanin + PasLiam + PasMoi + pasfeur + + + + Aled + Jémal + osKour + aidezmwa + + + + TestNom + TestPrenom + TestPseudo + TestMdp \ No newline at end of file