test partie correction partie
continuous-integration/drone/push Build is passing Details

master
Céleste BARBOSA 11 months ago
parent 4abaaee42c
commit 42ab7eb143

@ -107,7 +107,7 @@ namespace CoreLibrary
/// <summary>
/// Liste des noms des robots.
/// </summary>
public IEnumerable<string> Robots => joueurs.Where(joueur => joueur.Value).Select(joueur => joueur.Key);
public IEnumerable<string> Robots => joueurs.Where(joueur => !joueur.Value).Select(joueur => joueur.Key);
/// <summary>
/// Indique si la partie est terminée.

@ -8,6 +8,7 @@ using CoreLibrary.Core;
using CoreLibrary.Joueurs;
using CoreLibrary.Regles;
using CoreLibrary.Evenements;
using CoreLibrary.Exceptions;
namespace UnitTesting
@ -252,6 +253,66 @@ namespace UnitTesting
}
}
}
[Fact]
public void TestJoueurConnecteDejaPresent()
{
IRegles regle = new ReglesClassiques();
Partie partie = new Partie(regle);
bool appelee = false;
partie.PartieDemanderJoueur += (sender, e) => {
appelee = true;
if (e.Indice == 1)
e.JoueurDemande.SeConnecter(new Joueur("Céleste"));
else
Assert.Throws<JoueurDejaPresentException>(() => e.JoueurDemande.SeConnecter(new Joueur("Céleste")));
};
partie.Jouer();
Assert.True(appelee);
}
[Fact]
public void TestJoueurConnecteNomInterdit()
{
IRegles regle = new ReglesClassiques();
Partie partie = new Partie(regle);
bool appelee = false;
partie.PartieDemanderJoueur += (sender, e) => {
appelee = true;
Assert.Throws<NomJoueurInterditException>(() => e.JoueurDemande.SeConnecter(new Joueur("Robot")));
};
partie.Jouer();
Assert.True(appelee);
}
[Fact]
public void TestRobot()
{
IRegles regle = new ReglesClassiques();
Partie partie = new Partie(regle);
Assert.NotNull(partie.Robots);
Assert.Empty(partie.Robots);
partie.PartieDemanderJoueur += (sender, e) => {
e.JoueurDemande.SeConnecter(new Robot());
};
partie.Jouer();
Assert.NotEmpty(partie.Robots);
}
[Fact]
public void TestDebutPartie()
{

Loading…
Cancel
Save