using Model.Classes; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace TestProject1 { public class TestPersonnage { [Fact] public void ConstructeurPersonnage_ImageEgaleValeurParDefaut_ReturnTrue() { Personnage test = new Personnage("Luffy", 3000000000, "Luffy au Chapeau de Paille", 19, 1.74, "East Blue", "Monkey D. Luffy est...", "Le Roi des Pirates, ce sera moi !"); bool resultat = (test.Image == "baseimage.png"); Assert.True(resultat, "L'image devrait avoir la valeur : baseimage.png"); } [Fact] public void ConstructeurPersonnage2_ImageEgaleValeurParDefaut_ReturnTrue() { Personnage test = new Personnage("Luffy", 3000000000, "Luffy au Chapeau de Paille", 19, 1.74, "East Blue", "Monkey D. Luffy est...", "Le Roi des Pirates, ce sera moi !",""); bool resultat = (test.Image == "baseimage.png"); Assert.True(resultat, "L'image devrait avoir la valeur : baseimage.png"); } [Fact] public void Personnage_PrimeSuperieurOuEgalAZero_ReturnTrue() { Personnage test = new Personnage("Luffy", -100, "Luffy au Chapeau de Paille", 19, 1.74, "East Blue", "Monkey D. Luffy est...", "Le Roi des Pirates, ce sera moi !", "luffy.png"); bool resultat = (test.Prime >= 0); Assert.True(resultat, "La prime du personnage doit avoir une valeur positive"); } [Fact] public void Personnage_TailleSuperieurOuEgalAZero_ReturnTrue() { Personnage test = new Personnage("Luffy", 3000000000, "Luffy au Chapeau de Paille", 19, -1, "East Blue", "Monkey D. Luffy est...", "Le Roi des Pirates, ce sera moi !", "luffy.png"); bool resultat = (test.Taille >= 0); Assert.True(resultat, "La taille du personnage doit avoir une valeur positive"); } [Fact] public void Personnage_EquipageSetFonctionneCorrectement() { Personnage test = new Personnage("Luffy", -100, "Luffy au Chapeau de Paille", 19, 1.74, "East Blue", "Monkey D. Luffy est...", "Le Roi des Pirates, ce sera moi !", "luffy.png"); Equipage test2 = new Equipage("Équipage du Roux", "Akagami Kalzokudan", "East Blue", -1, 0, true, "L'équipage du Roux ...", ""); test.Equipage = test2; bool resultat = (test.Equipage == test2); Assert.True(resultat, "La valeur Equipage du personnage devrait etre égal à test2"); } [Fact] public void PersonnageRetirerFruit_FonctionneCorrectement() { Equipage test = new Equipage("Équipage du Roux", "Akagami Kalzokudan", "East Blue", -1, 0, true, "L'équipage du Roux ...", ""); Personnage test2 = new Personnage("Luffy", 3000000000, "Luffy au Chapeau de Paille", 19, 1.74, "East Blue", "Monkey D. Luffy est...", "Le Roi des Pirates, ce sera moi !"); test.AjouterMembre(test2); test.RetirerMembre(test2); Assert.DoesNotContain(test2, test.Membre); test.AjouterMembre(test2); test.ViderMembre(); Assert.DoesNotContain(test2, test.Membre); } [Fact] public void SurchargeEqualsPersonnage_Personnage1EgalePersonnage2() { Personnage personnage1 = new Personnage("Luffy", 3000000000, "Luffy au Chapeau de Paille", 19, -1, "East Blue", "Monkey D. Luffy est...", "Le Roi des Pirates, ce sera moi !", "luffy.png"); Personnage personnage2 = new Personnage("Luffy", 3000000000, "Luffy au Chapeau de Paille", 19, -1, "East Blue", "Monkey D. Luffy est...", "Le Roi des Pirates, ce sera moi !", "luffy.png"); Personnage personnage3 = new Personnage("Lufty", 3000000000, "Luffy au Chapeau de Paille", 19, -1, "East Blue", "Monkey D. Luffy est...", "Le Roi des Pirates, ce sera moi !", "luffy.png"); Bateau bateau1 = new Bateau("Sunny", "Sauzando Sani-go", 435, 321, "Le Thousand Sunny est...", "Ce bateau a pour particularités ...", " "); bool resultat = (personnage1.Equals(personnage1)); bool resultat2 = (personnage1.Equals(personnage3)); bool resultat3 = (personnage1.Equals(bateau1)); Assert.True(resultat, "Les personanges devraient etre égaux car ils ont le meme nom"); Assert.False(resultat2, "Les personanges ne devraient pas etre égaux car ils n'ont pas le meme nom"); Assert.False(resultat3, "Les deux objets ne devraient pas etre égaux car ils n'ont pas le meme type"); } [Fact] public void GetHashCode_PersonnageWithSameProperties_ReturnsSameHashCode() { Personnage obj1 = new Personnage("Luffy", 3000000000, "Luffy au Chapeau de Paille", 19, -1, "East Blue", "Monkey D. Luffy est...", "Le Roi des Pirates, ce sera moi !", "luffy.png"); Personnage obj2 = new Personnage("Luffy", 3000000000, "Luffy au Chapeau de Paille", 19, -1, "East Blue", "Monkey D. Luffy est...", "Le Roi des Pirates, ce sera moi !", "luffy.png"); var hashCode1 = obj1.GetHashCode(); var hashCode2 = obj2.GetHashCode(); Assert.True(hashCode1 == hashCode2); } [Fact] public void ToString_ReturnsCorrectStringRepresentation() { Personnage obj1 = new Personnage("Luffy", 3000000000, "Luffy au Chapeau de Paille", 19, -1, "East Blue", "Monkey D. Luffy est...", "Le Roi des Pirates, ce sera moi !", "luffy.png"); var result = obj1.ToString(); Assert.True("Personnage : Luffy False 3000000000 Luffy au Chapeau de Paille 19 East Blue Monkey D. Luffy est... Le Roi des Pirates, ce sera moi ! System.Collections.ObjectModel.ObservableCollection`1[Model.Classes.FruitDuDemon] luffy.png" == result); } } }