From 90f7273e67d8878e89be2ae74cec7961cde7ac16 Mon Sep 17 00:00:00 2001 From: "remi.lavergne" Date: Fri, 9 Jun 2023 13:04:10 +0200 Subject: [PATCH] Ajout Test Utilisateur --- Sources/GameAtlas/GameAtlas.sln | 12 ++++ .../GameAtlas/Tests/UtilisateurSimulation.cs | 56 +++++++++++++------ 2 files changed, 50 insertions(+), 18 deletions(-) diff --git a/Sources/GameAtlas/GameAtlas.sln b/Sources/GameAtlas/GameAtlas.sln index 690eaa0..6cf5783 100644 --- a/Sources/GameAtlas/GameAtlas.sln +++ b/Sources/GameAtlas/GameAtlas.sln @@ -5,6 +5,10 @@ VisualStudioVersion = 17.0.31611.283 MinimumVisualStudioVersion = 10.0.40219.1 Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GameAtlas", "GameAtlas\GameAtlas.csproj", "{D3C0D86A-FF1B-4C1B-AA60-537889127607}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Models", "Models\Models.csproj", "{0B50E976-EC7C-4A88-96DA-632162084160}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Tests", "Tests\Tests.csproj", "{6DD3E0DA-035C-411E-ABB4-794181D25A72}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -17,6 +21,14 @@ Global {D3C0D86A-FF1B-4C1B-AA60-537889127607}.Release|Any CPU.ActiveCfg = Release|Any CPU {D3C0D86A-FF1B-4C1B-AA60-537889127607}.Release|Any CPU.Build.0 = Release|Any CPU {D3C0D86A-FF1B-4C1B-AA60-537889127607}.Release|Any CPU.Deploy.0 = Release|Any CPU + {0B50E976-EC7C-4A88-96DA-632162084160}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0B50E976-EC7C-4A88-96DA-632162084160}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0B50E976-EC7C-4A88-96DA-632162084160}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0B50E976-EC7C-4A88-96DA-632162084160}.Release|Any CPU.Build.0 = Release|Any CPU + {6DD3E0DA-035C-411E-ABB4-794181D25A72}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6DD3E0DA-035C-411E-ABB4-794181D25A72}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6DD3E0DA-035C-411E-ABB4-794181D25A72}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6DD3E0DA-035C-411E-ABB4-794181D25A72}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/Sources/GameAtlas/Tests/UtilisateurSimulation.cs b/Sources/GameAtlas/Tests/UtilisateurSimulation.cs index cddd1d6..750d4e9 100644 --- a/Sources/GameAtlas/Tests/UtilisateurSimulation.cs +++ b/Sources/GameAtlas/Tests/UtilisateurSimulation.cs @@ -10,38 +10,58 @@ namespace Tests { public class UtilisateurSimulation { - readonly Utilisateur Georges = new Utilisateur("georges.gio@gmail.com", "GeoStorm", "Storm7!"); - [Fact] - public void UserCheck() + public void Utilisateur_Creation_Et_Verification() { - Debug.WriteLine(Georges.Mail); - Debug.WriteLine(Georges.Pseudo); - Debug.WriteLine(Georges.EstAdmin); + + string mail = "test@example.com"; + string pseudo = "testuser"; + string mdp = "password"; + + + Utilisateur utilisateur = new Utilisateur(mail, pseudo, mdp); + + // Assert + Assert.Equal(mail, utilisateur.Mail); + Assert.Equal(pseudo, utilisateur.Pseudo); + Assert.Equal(mdp, utilisateur.Mdp); + Assert.False(utilisateur.EstAdmin); + Assert.Empty(utilisateur.ListePossedes); + Assert.Empty(utilisateur.ListeFavoris); } [Fact] - public void ListeFavoris() + public void Utilisateur_Ajouter_Jeu_Aux_Listes() { + + Utilisateur utilisateur = new Utilisateur("test@example.com", "testuser", "password"); Jeu TheLastOfUs = new Jeu("The Last Of Us Part I", "Dans un monde dévasté où rôdent infectés et survivants endurcis, Joel, un protagoniste désabusé, est engagé pour faire sortir Ellie, 14 ans, d'une zone de quarantaine militaire. Mais ce qui devait être une simple mission de routine se transforme vite en un dangereux périple à travers le pays.", "28 Mars 2023", "PS5 PC", "Naughty Dog LLC", "PlayStation PC LLC", 8.5, 487, "Solo Action Aventure", "cover_lastofus1.png"); - Georges.ListeFavoris.Add(TheLastOfUs); - Debug.WriteLine($"Nombre de jeux dans la Liste des Favoris: {Georges.ListeFavoris.Count()}"); - Debug.WriteLine($"Nom du Jeu: {Georges.ListeFavoris[0].Nom}"); - Georges.ListeFavoris.Remove(TheLastOfUs); - Debug.WriteLine($"Nombre de jeux dans la Liste des Favoris: {Georges.ListeFavoris.Count()}"); + + utilisateur.ListePossedes.Add(TheLastOfUs); + utilisateur.ListeFavoris.Add(TheLastOfUs); + + // Assert + Assert.Contains(TheLastOfUs, utilisateur.ListePossedes); + Assert.Contains(TheLastOfUs, utilisateur.ListeFavoris); } [Fact] - public void ListePossedes() + public void Utilisateur_Supprimer_Jeu_Des_Listes() { + + Utilisateur utilisateur = new Utilisateur("test@example.com", "testuser", "password"); Jeu ForzaHorizon = new Jeu("Forza Horizon 5", "Dans ce jeu, vous pouvez explorer une carte en monde ouvert vraiment massive, cinquante pour cent plus grande que la carte non négligeable de Forza Horizon 4. Faites la course avec divers véhicules à travers la caldeira d'un volcan, explorez les jungles et les forêts tropicales à la recherche de villes en ruines cachées, parcourez les plages de sable blanc, et passez devant des chutes d'eau, des montagnes enneigées et de grandes villes comme Guanajuato, qui possède un réseau de tunnels secrets à explorer !", "9 Novembre 2021", "PC XOne", "Playground Games", "Xbox Game Studios", 6.5, 420, "Course Simulation Sport", "cover_forzahorizon5.png"); - Georges.ListePossedes.Add(ForzaHorizon); - Debug.WriteLine($"Nombre de jeux dans la Liste de Possédés: {Georges.ListePossedes.Count()}"); - Debug.WriteLine($"Nom du Jeu: {Georges.ListePossedes[0].Nom}"); + utilisateur.ListePossedes.Add(ForzaHorizon); + utilisateur.ListeFavoris.Add(ForzaHorizon); + + + utilisateur.ListePossedes.Remove(ForzaHorizon); + utilisateur.ListeFavoris.Remove(ForzaHorizon); - Georges.ListePossedes.Remove(ForzaHorizon); - Debug.WriteLine($"Nombre de jeux dans la Liste de Possédés: {Georges.ListePossedes.Count()}"); + // Assert + Assert.DoesNotContain(ForzaHorizon, utilisateur.ListePossedes); + Assert.DoesNotContain(ForzaHorizon, utilisateur.ListeFavoris); } } }