From 65ecbf1e0d1c8bdb56df989046291fa67c3c8f59 Mon Sep 17 00:00:00 2001 From: "pauline.prady" Date: Tue, 14 May 2024 23:37:48 +0200 Subject: [PATCH] Test ReglesClassiques --- Sources/UnitTesting/ReglesClassiquesUT.cs | 47 +++++++++++++++++++++-- 1 file changed, 44 insertions(+), 3 deletions(-) diff --git a/Sources/UnitTesting/ReglesClassiquesUT.cs b/Sources/UnitTesting/ReglesClassiquesUT.cs index 8da2a13..89e3597 100644 --- a/Sources/UnitTesting/ReglesClassiquesUT.cs +++ b/Sources/UnitTesting/ReglesClassiquesUT.cs @@ -1,5 +1,6 @@ using CoreLibrary; using CoreLibrary.Exceptions; +using System.Reflection; using Xunit; namespace UnitTesting @@ -69,6 +70,28 @@ namespace UnitTesting Assert.Equal("joueur2", joueurCourantSuivant.Nom); } + [Fact] + public void TestPasserLaMainCompteurReinitialise() + { + ReglesClassiques regles = new ReglesClassiques(); + Type type = typeof(ReglesClassiques); + + regles.AjouterJoueur("joueur1"); + regles.AjouterJoueur("joueur2"); + regles.CommencerLaPartie(); + + FieldInfo? fieldInfo = type.GetField("joueurCourant", BindingFlags.NonPublic | BindingFlags.Instance); + Assert.NotNull(fieldInfo); + int? joueurCourant = (int?)fieldInfo.GetValue(regles); + + regles.PasserLaMain(); + regles.PasserLaMain(); + regles.PasserLaMain(); + + Assert.NotNull(joueurCourant); + Assert.Equal(0, joueurCourant); + } + [Fact] public void TestPasserLaMainInvalid() { @@ -101,9 +124,16 @@ namespace UnitTesting } [Fact] - public void TestEstTermineeTrue() + public void TestEstTermineeFalseUnJoueur() { - // + ReglesClassiques regles = new ReglesClassiques(); + regles.AjouterJoueur("joueur1"); + regles.CommencerLaPartie(); + regles.PasserLaMain(); + + bool result = regles.EstTerminee(); + + Assert.False(result); } [Fact] @@ -119,7 +149,18 @@ namespace UnitTesting Assert.False(estTerminee); } - //Test Gagnants et Perdants + TestEstTermineeTrue + TestConstructor PB + [Fact] + public void TestGagnantsAucunGagnants() + { + ReglesClassiques regles = new ReglesClassiques(); + regles.AjouterJoueur("joueur1"); + regles.AjouterJoueur("joueur2"); + regles.CommencerLaPartie(); + + IEnumerable gagnants = regles.Gagnants(); + + Assert.Empty(gagnants); + } } }