public void APlayerCanHaveAVisitAndSeeTheirScoreChange() { var leg = new Leg(501); var player = new Player("Andy"); leg.AddPlayer(player); var visit = new Visit(player, 100); var newScore = leg.Visit(visit); Assert.AreEqual(401, newScore); }
public void AnErrorIsThronWhenAPlayerReaches0WithAnImpossibleCheckout() { var leg = new Leg(501); var player = new Player("Andy"); leg.AddPlayer(player); var visit = new Visit(player, 100); var checkoutVisit = new Visit(player, 101); leg.Visit(new Visit(player, 100));//401 leg.Visit(new Visit(player, 100));//301 leg.Visit(new Visit(player, 100));//201 leg.Visit(new Visit(player, 39));//162 leg.Visit(new Visit(player, 162)); }
public void APlayersScoreCanReachExacly0() { var leg = new Leg(501); var player = new Player("Andy"); leg.AddPlayer(player); var visit = new Visit(player, 100); var checkoutVisit = new Visit(player, 101); leg.Visit(visit);//401 leg.Visit(visit);//301 leg.Visit(visit);//201 leg.Visit(visit);//101 var score = leg.Visit(checkoutVisit);//1 = bust, therefore 101 Assert.AreEqual(0, leg.Players[0].Score); }
public void APlayersScoreRemainsTheSameWhenTheirOverallScoreGoBelow2() { var leg = new Leg(501); var player = new Player("Andy"); leg.AddPlayer(player); var visit = new Visit(player, 100); leg.Visit(visit);//401 leg.Visit(visit);//301 leg.Visit(visit);//201 leg.Visit(visit);//101 var score = leg.Visit(visit);//1 = bust, therefore 101 Assert.AreEqual(101, leg.Players[0].Score); }
public void ICannotAddAPlayerToALegWithoutAName() { var leg = new Leg(501); var player = new Player(null); leg.AddPlayer(player); }
public void ICannotAddAPlayerToALegWithANameLongerThan10Characters() { var leg = new Leg(501); var player = new Player("12345678910"); leg.AddPlayer(player); }
public void ICannotAddAPlayerToALegWithANameAsEmptyString() { var leg = new Leg(501); var player = new Player(""); leg.AddPlayer(player); }
public void ICannotAdd2PlayersToALegWithTheSameName() { var leg = new Leg(501); var player = new Player("Andy"); leg.AddPlayer(player); leg.AddPlayer(player); }
public void ICanCheckIfTheLegHasBeenWonWhenPlayerHasWon() { var leg = new Leg(501); var player = new Player("Andy"); leg.AddPlayer(player); leg.Visit(new Visit(player, 100));//401 leg.Visit(new Visit(player, 100));//301 leg.Visit(new Visit(player, 100));//201 leg.Visit(new Visit(player, 100));//101 leg.Visit(new Visit(player, 101));//0 var hasWon = leg.HasPlayerWon(player); Assert.IsTrue(hasWon); }
public void ICanAddAPlayerToALeg() { var leg = new Leg(501); var player = new Player("Andy"); leg.AddPlayer(player); Assert.AreEqual(1, leg.Players.Count); Assert.AreEqual("Andy", leg.Players[0].Name); Assert.AreEqual(501, leg.Players[0].Score); }