public void RemovingPlayerNoPlayersDoesNotThrow() { var table = new GameLogic.Table(6, new GameLogic.StakeInfo(1, 2)); var player = new Models.Player("name", "key", 1000); table.RemovePlayer(player); }
public void StakeInfoCorrect() { var table = new GameLogic.Table(6, new GameLogic.StakeInfo(1, 2)); Assert.AreEqual(1, table.StakeInfo.SmallBlind, "Unexpected small blind value."); Assert.AreEqual(2, table.StakeInfo.BigBlind, "Unexpected big blind value."); }
public void AddingPlayerTakesStakeMoney() { var table = new GameLogic.Table(6, new GameLogic.StakeInfo(1, 2)); var player = new Models.Player("name", "key", 1000); table.AddPlayer(player); Assert.AreEqual(player.Cash, 800, "Unexpected amount of cash assigned to player."); }
public void RemovingNonSeatedPlayerDoesNotThrow() { var table = new GameLogic.Table(6, new GameLogic.StakeInfo(1, 2)); var seatedPlayer = new Models.Player("seated", "key", 1000); table.AddPlayer(seatedPlayer); var player = new Models.Player("name", "key", 1000); table.RemovePlayer(player); }
public void RemovingPlayerReturnsMoney() { var table = new GameLogic.Table(6, new GameLogic.StakeInfo(1, 2)); var seatedPlayer = new Models.Player("seated", "key", 1000); table.AddPlayer(seatedPlayer); Assert.AreEqual(800, seatedPlayer.Cash, "Unexpected cash value on player after seating."); table.RemovePlayer(seatedPlayer); Assert.AreEqual(1000, seatedPlayer.Cash, "Upon leaving the table, the players cash value is incorrect."); }
public void CanRemovePlayerAtCapacity() { var table = new GameLogic.Table(6, new GameLogic.StakeInfo(1, 2)); var seatedPlayer = new Models.Player("seated", "key", 1000); for (int i = 0; i < 5; i++) { table.AddPlayer(new Models.Player(i.ToString(), "key", 1000)); } table.RemovePlayer(seatedPlayer); }
public void RemovingNonSeatedPlayerDoesntReturnMoney() { var table = new GameLogic.Table(6, new GameLogic.StakeInfo(1, 2)); var seatedPlayer = new Models.Player("seated", "key", 1000); table.AddPlayer(seatedPlayer); var player = new Models.Player("name", "key", 1000); table.RemovePlayer(player); Assert.AreEqual(1000, player.Cash, "The un-seated players cash value changed."); }
public void TableCapacityWithPlayers() { uint playerCapacity = 6; var table = new GameLogic.Table(playerCapacity, new GameLogic.StakeInfo(1, 2)); for (int i = 0; i < playerCapacity - 1; i++) { var player = new Models.Player(i.ToString(), "key", 0); table.AddPlayer(player); } Assert.AreEqual(1, table.RemainingSeats, "There should be a seat remaining at the table."); }
public void CannotAddDuplicatePlayer() { var table = new GameLogic.Table(6, new GameLogic.StakeInfo(1, 2)); var player = new Models.Player("name", "key", 1000); table.AddPlayer(player); try { table.AddPlayer(player); } catch (InvalidOperationException) { return; } Assert.Fail("An already seated player cannot be added to the table again."); }
public void FailureToAddAPlayerDoesNotTakeStake() { uint tableCapacity = 6; var table = new GameLogic.Table(tableCapacity, new GameLogic.StakeInfo(1, 2)); for (int i = 0; i < tableCapacity; i++) { table.AddPlayer(new Models.Player(i.ToString(), "key", 0)); } var extraPlayer = new Models.Player("name", "key", 1000); try { table.AddPlayer(extraPlayer); } catch (InvalidOperationException) { Assert.AreEqual(1000, extraPlayer.Cash, "Player had an unexpected amount of cash assigned."); } }
public void CannotAddPlayerAtCapacity() { uint tableCapacity = 6; var table = new GameLogic.Table(tableCapacity, new GameLogic.StakeInfo(1, 2)); for (int i = 0; i < tableCapacity; i++) { table.AddPlayer(new Models.Player(i.ToString(), "key", 0)); } try { table.AddPlayer(new Models.Player("name", "key", 0)); } catch (InvalidOperationException) { return; } Assert.Fail("A table shouldn't accept new players when at capacity."); }
public void AddPlayerWhenBelowCapacity() { var table = new GameLogic.Table(6, new GameLogic.StakeInfo(1, 2)); table.AddPlayer(new Models.Player("name", "key", 1000)); }
public void TableCapacityCorrectWhenEmpty() { var table = new GameLogic.Table(6, new GameLogic.StakeInfo(1, 2)); Assert.AreEqual(6, table.RemainingSeats, "The number of remaining seats is incorrect."); }
public void IdPropertyIsGUID() { var table = new GameLogic.Table(6, new GameLogic.StakeInfo(1, 2)); Assert.IsNotNull(table.Id, "The Table should generate an identifying GUID."); }