Test sur Equipe
continuous-integration/drone/push Build is failing Details

pull/26/head
AUGUSTIN_100 3 years ago
parent f38aab6e29
commit 22402eba6a

@ -11,59 +11,63 @@ namespace BowlingLib.Model
{
private string nom;
private List<Joueur> joueurs;
public ReadOnlyCollection<Joueur> Joueurs { get; private set; }
private List<Joueur> joueurs = new List<Joueur>();
public string Nom
{
get { return nom; }
set { nom = value; }
}
public List<Joueur> Joueurs
{
get { return this.joueurs.AsReadOnly().ToList(); }
set {
foreach (Joueur nouv in value) AjouterJoueur(nouv);
}
}
public Equipe(string nom, List<Joueur> joueurs)
public Equipe(string nom, params Joueur[] joueurs)
{
this.nom = nom;
if ( joueurs != null && joueurs.Count > 0)
{
if (!this.joueurs.SequenceEqual(joueurs)) this.joueurs = joueurs; // Verification de doublon avant l'ajout des joueurs dans l'équipe
foreach (Joueur nouv in joueurs) AjouterJoueur(nouv);
}
else
{
throw new ArgumentException("La liste est null ");
}
Joueurs = new ReadOnlyCollection<Joueur>(this.joueurs);
}
public Equipe(string nom)
{
this.nom = nom;
joueurs = new List<Joueur>();
}
public void AjouterJoueurs(params Joueur[] joueurs)
{
foreach(var j in joueurs)
{
AjouterJoueur(j);
}
public void AjouterJoueur(Joueur joueur)
Joueurs = new ReadOnlyCollection<Joueur>(this.joueurs);
}
public bool AjouterJoueur(Joueur joueur)
{
if(!isExist(joueur))
{
joueurs.Add(joueur);
return true;
}else
{
throw new ArgumentException("Le joueur existe déjà dans l'équipe");
}
return false;
}
public void SupprimerJoueur(Joueur joueur)

@ -7,6 +7,60 @@ namespace Test.BowlingAppUnitTest
{
public class UnitTestEquipe
{
public static IEnumerable<object[]> Data_AddJoueurToEquipe()
{
yield return new object[]
{
true,
new Joueur[]
{
new Joueur("Alys"),
new Joueur("Bénita"),
new Joueur("Regis"),
new Joueur("Mania"),
new Joueur("Cornelle")
},
new Equipe("ABRMC",
new Joueur("Alys"),
new Joueur("Bénita"),
new Joueur("Regis"),
new Joueur("Mania")),
new Joueur("Cornelle")
};
yield return new object[]
{
false,
new Joueur[]
{
new Joueur("Alys"),
new Joueur("Bénita"),
new Joueur("Regis"),
new Joueur("Mania")
},
new Equipe("ABRMC",
new Joueur("Alys"),
new Joueur("Bénita"),
new Joueur("Regis"),
new Joueur("Mania")),
new Joueur("Mania")
};
}
[Theory]
[MemberData(nameof(Data_AddJoueurToEquipe))]
public void Test_AddJoueurToEquipe(bool expectedResult,
IEnumerable<Artist> expectedJoueurs,
Equipe equipe,
Joueur joueur)
{
bool result = equipe.AjouterJoueur(joueur);
Assert.Equal(expectedResult, result);
Assert.Equal(expectedJoueurs.Count(), equipe.Joueurs.Count());
Assert.All(expectedJoueurs, j => equipe.Joueurs.Contains(j));
}
}
}

Loading…
Cancel
Save