From 1ca07b1ba6a01166234f18b689f1c11bbc480c21 Mon Sep 17 00:00:00 2001 From: "camille.turpin-etienne" Date: Thu, 6 Jun 2024 23:18:10 +0200 Subject: [PATCH] Test Plateau --- Sources/UnitTesting/PartieUT.cs | 1 - Sources/UnitTesting/PlateauUT.cs | 72 ++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+), 1 deletion(-) diff --git a/Sources/UnitTesting/PartieUT.cs b/Sources/UnitTesting/PartieUT.cs index 1bc3a65..8c432e2 100644 --- a/Sources/UnitTesting/PartieUT.cs +++ b/Sources/UnitTesting/PartieUT.cs @@ -501,7 +501,6 @@ namespace UnitTesting [Fact] public void TestPartieTerminee() { - // Création de la partie avec des règles de jeu IRegles regle = new ReglesClassiques(); Partie partie = new Partie(regle); diff --git a/Sources/UnitTesting/PlateauUT.cs b/Sources/UnitTesting/PlateauUT.cs index 8483405..52b1ac8 100644 --- a/Sources/UnitTesting/PlateauUT.cs +++ b/Sources/UnitTesting/PlateauUT.cs @@ -107,5 +107,77 @@ namespace UnitTesting plateau.AjouterCode(codeSecret); Assert.True(plateau.Victoire); } + + [Fact] + public void TestGrilleAjouterCode() + { + Code code = new Code(4); + Couleur[] couleurs = Enum.GetValues(); + Plateau plateau = new Plateau(4, 12); + Jeton[] jetons = new Jeton[] + { + new Jeton(Couleur.Rouge), + new Jeton(Couleur.Bleu), + new Jeton(Couleur.Blanc), + new Jeton(Couleur.Jaune) + }; + code.AjouterJeton(jetons[0]); + code.AjouterJeton(jetons[1]); + code.AjouterJeton(jetons[2]); + code.AjouterJeton(jetons[3]); + + plateau.AjouterCode(code); + (IEnumerable>, IEnumerable>) grille = plateau.Grille; + + var (jetonsGrille, indicateurs) = grille; + + + Assert.Single(jetonsGrille); + Assert.Equal(4, jetonsGrille.First().Count()); + + Assert.Single(indicateurs); + } + + [Fact] + public void TestGrilleEstVide() + { + Plateau plateau = new Plateau(4, 12); + (IEnumerable>, IEnumerable>) grille = plateau.Grille; + + var (jetons, indicateurs) = grille; + + Assert.Empty(jetons); + Assert.Empty(indicateurs); + } + + [Fact] + public void AjouterCode_GrilleComplete_ThrowsGrilleCompleteException() + { + Plateau plateau = new Plateau(4, 2); + Code codeComplet1 = new Code(4); + Code codeComplet2 = new Code(4); + Code codeComplet3 = new Code(4); + Jeton[] jetons = new Jeton[] + { + new Jeton(Couleur.Rouge), + new Jeton(Couleur.Bleu), + new Jeton(Couleur.Blanc), + new Jeton(Couleur.Jaune) + }; + foreach (Jeton jeton in jetons) + { + codeComplet1.AjouterJeton(jeton); + codeComplet2.AjouterJeton(jeton); + codeComplet3.AjouterJeton(jeton); + } + + plateau.AjouterCode(codeComplet1); + plateau.AjouterCode(codeComplet2); + + Assert.Throws(() => plateau.AjouterCode(codeComplet3)); + } + + + } }