Test fini de ReglesClassiques ?

master
Pauline PRADY 11 months ago
parent a3ff5d5442
commit 07b4eff02d

@ -65,11 +65,27 @@ namespace UnitTesting
regles.AjouterJoueur("joueur2"); regles.AjouterJoueur("joueur2");
regles.CommencerLaPartie(); regles.CommencerLaPartie();
Joueur joueurCourantInitial = regles.JoueurCourant();
Type type = typeof(ReglesClassiques);
FieldInfo? fieldInfo = type.GetField("joueurCourant", BindingFlags.NonPublic | BindingFlags.Instance);
Assert.NotNull(fieldInfo);
int? joueurCourantAvant = (int?)fieldInfo.GetValue(regles);
Assert.NotNull(joueurCourantAvant);
joueurCourantAvant++;
if (joueurCourantAvant >= regles.NbJoueursMaximum)
joueurCourantAvant = 0;
regles.PasserLaMain(); regles.PasserLaMain();
Joueur joueurCourantSuivant = regles.JoueurCourant(); Joueur joueurCourantSuivant = regles.JoueurCourant();
Assert.NotEqual(joueurCourantInitial, joueurCourantSuivant); Assert.Equal(regles.JoueurCourant(), joueurCourantSuivant);
int? joueurCourantApres = (int?)fieldInfo.GetValue(regles);
Assert.NotNull(joueurCourantApres);
Assert.Equal(joueurCourantAvant, joueurCourantApres);
Assert.Equal("joueur2", joueurCourantSuivant.Nom); Assert.Equal("joueur2", joueurCourantSuivant.Nom);
} }
@ -127,12 +143,24 @@ namespace UnitTesting
} }
[Fact] [Fact]
public void TestEstTermineeFalseUnJoueur() public void TestEstTermineeFalseJoueurCourantNull()
{ {
ReglesClassiques regles = new ReglesClassiques(); ReglesClassiques regles = new ReglesClassiques();
regles.AjouterJoueur("joueur1"); regles.AjouterJoueur("joueur1");
regles.AjouterJoueur("joueur2");
regles.CommencerLaPartie(); regles.CommencerLaPartie();
regles.PasserLaMain();
Type type = typeof(ReglesClassiques);
FieldInfo? fieldInfo = type.GetField("joueurCourant", BindingFlags.NonPublic | BindingFlags.Instance);
Assert.NotNull(fieldInfo);
int? joueurCourant = (int?)fieldInfo.GetValue(regles);
joueurCourant = null;
Assert.Null(joueurCourant);
joueurCourant = 1;
Assert.Equal(1, joueurCourant);
bool result = regles.EstTerminee(); bool result = regles.EstTerminee();
@ -173,7 +201,7 @@ namespace UnitTesting
} }
[Fact] [Fact]
public void TestEstTermineeToursMaximesAtteints() public void TestEstTermineeToursMaximumAtteints()
{ {
ReglesClassiques regles = new ReglesClassiques(); ReglesClassiques regles = new ReglesClassiques();
Partie partie = new Partie(regles); Partie partie = new Partie(regles);
@ -191,8 +219,6 @@ namespace UnitTesting
Assert.True(estTerminee); Assert.True(estTerminee);
} }
[Fact] [Fact]
public void TestGagnantsAucunGagnants() public void TestGagnantsAucunGagnants()
{ {

Loading…
Cancel
Save