.
continuous-integration/drone/push Build is passing Details

pull/20/head
victor perez ngounou 3 years ago
parent 564e47d3af
commit 268bac1350

@ -30,17 +30,20 @@ namespace BowlingLib.Model
for (int i = 0; i < Frames.Count; i++)
{
score += Frames[i].QuillesTombees;
if (Frames[i].IsStrike)
if (i<Frames.Count-1)
{
score += Frames[i + 1].QuillesTombees;
if (Frames[i + 1].IsStrike && i < Frames.Count - 2)
if (Frames[i].IsStrike)
{
score += Frames[i + 2].QuillesTombees;
score += Frames[i + 1].QuillesTombees;
if (Frames[i + 1].IsStrike && i < Frames.Count - 2)
{
score += Frames[i + 2].QuillesTombees;
}
}
else if (Frames[i].IsSpare)
{
score += Frames[i + 1].Lancer1.QuillesTombees;
}
}
else if (Frames[i].IsSpare)
{
score += Frames[i + 1].Lancer1.QuillesTombees;
}
}
return score;

@ -1,8 +1,28 @@
namespace BowlingStub
using BowlingLib.Model;
namespace BowlingStub
{
public class StubPartie
{
List<Partie> listParties = new List<Partie>();
public StubPartie()
{
}
//Fonction permettant de créer une partie pour chaque joueur
public List<Partie> ListParties(int n = 10)
{
for (int i = 0; i < n; i++)
{
listParties.Add(new Partie(new Joueur("Joueur " + i + 1)));
}
return listParties;
}
}
}

@ -0,0 +1,45 @@
using BowlingLib.Model;
using BowlingStub;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xunit;
namespace BowlingAppUnitTest
{
public class UTPartie
{
[Fact]
public void TestGetScore()
{
//Arrange
StubPartie stubPartie = new StubPartie();
List<Partie> listParties = stubPartie.ListParties();
Partie partie = listParties[0];
partie.AddFrame(new Frame(1));
partie.AddFrame(new Frame(2));
partie.AddFrame(new Frame(3));
partie.AddFrame(new Frame(4));
partie.AddFrame(new Frame(5));
partie.AddFrame(new Frame(6));
partie.AddFrame(new Frame(7));
partie.AddFrame(new Frame(8));
partie.AddFrame(new Frame(9));
partie.AddFrame(new Frame(10));
partie.AddFrame(new Frame(10));
for (int i = 0; i < partie.Frames.Count; i++)
{
partie.Frames[i].Lancer(10);
}
//Act
int? score = partie.GetScore();
//Assert
Assert.Equal(300, score);
}
}
}
Loading…
Cancel
Save