public void NewGameMax3Players_Add4thPlayer_ThrowsInvalidOperation() { var game = new BlackJackGame(cardProvider, DealerNamedData, 3); var player = new Avitar(playerName); game.AddPlayer(new BlackJackPlayer(new AvitarDto() { id = "8625cf04-b7e2", userName = playerName }, HandIdentifierProvider, 1)); game.AddPlayer(new BlackJackPlayer(new AvitarDto() { id = "8625cf04-b7e2", userName = playerName }, HandIdentifierProvider, 1)); game.AddPlayer(new BlackJackPlayer(new AvitarDto() { id = "8625cf04-b7e2", userName = playerName }, HandIdentifierProvider, 1)); Assert.Throws <InvalidOperationException>(() => game.AddPlayer(new BlackJackPlayer(new AvitarDto() { id = "8625cf04-b7e2", userName = playerName }, HandIdentifierProvider, 1))); Assert.AreEqual(4, game.Players.Count()); Assert.AreEqual(GameStatus.Ready, game.Status); Assert.AreEqual(game.CurrentPlayer, game.Players.First()); }
public void AfterDeal_PlayerHolds_CurrectValues() { var playerOneId = "8625cf04-b7e2"; var game = new BlackJackGame(cardProvider, DealerNamedData, 1); var player2 = new Avitar(playerName2); game.AddPlayer(new BlackJackPlayer(new AvitarDto() { id = "8625cf04-b7e2", userName = playerName2 }, HandIdentifierProvider, 1)); game.SetPlayerStatusReady(playerOneId); game.DealHands(); Assert.AreEqual(2, game.Players.Last().Hands.First().Cards.Count()); Assert.AreEqual(5, game.Players.First().Hands.First().PointValue); Assert.AreEqual(5, game.Players.Last().Hands.First().PointValue); Assert.IsTrue(game.Players.First().Hands.First().Cards.First().FaceDown); Assert.IsFalse(game.Players.First().Hands.First().Cards.Last().FaceDown); Assert.IsTrue(game.Players.Last().Hands.First().Cards.First().FaceDown); Assert.IsFalse(game.Players.Last().Hands.First().Cards.Last().FaceDown); Assert.AreEqual(GameStatus.InProgress, game.Status); game.PlayerHolds(playerOneId, HandIdentifierProvider.GenerateHandIds(1).Single()); Assert.AreEqual(2, game.Players.First().Hands.First().Cards.Count()); Assert.AreEqual(5, game.Players.First().Hands.First().PointValue); Assert.AreEqual(PlayerStatusTypes.Complete, game.Players.First().Status); Assert.AreEqual(PlayerStatusTypes.InProgress, game.Players.Last().Status); Assert.AreEqual(GameStatus.InProgress, game.Status); game.PlayerHolds(DealerDataId, HandIdentifierProvider.GenerateHandIds(1).Single()); Assert.AreEqual(2, game.Players.Last().Hands.First().Cards.Count()); Assert.AreEqual(5, game.Players.Last().Hands.First().PointValue); Assert.AreEqual(PlayerStatusTypes.Complete, game.Players.First().Status); Assert.AreEqual(PlayerStatusTypes.Complete, game.Players.Last().Status); Assert.AreEqual(GameStatus.Complete, game.Status); }
public void NewPlayer_Sam_CorrectName() { var sam = new Avitar(playerName); Assert.AreEqual(playerName, sam.Name); }