public void ShouldMoveAroundTheBoard() { // Arrange Square[] realBoard = TestBoards.RealBoard(); var player = new Player(Token.Automobile, "Test"); var dice = Substitute.For <IDice>(); dice.Roll().Returns(new RollResult(1, 2)); // Act player.TakeTurn(dice, realBoard); // Assert player.CurrentSquare.Should().Be(3); }
public void ShouldBeAbleToBuyUnownedRailroad() { // Arrange Square[] realBoard = TestBoards.RealBoard(); var player = new Player(Token.Automobile, "Test"); var dice = Substitute.For <IDice>(); dice.Roll().Returns(new RollResult(3, 2)); // Act player.TakeTurn(dice, realBoard); // Assert player.Money.Should().Be(1300); realBoard[player.CurrentSquare].Owner.Should().Be(player); }
public void ShouldNotPayRentWhenYouOwnTheLocation() { // Arrange Square[] realBoard = TestBoards.RealBoard(); var player = new Player(Token.Automobile, "Test"); realBoard[3].Owner = player; var dice = Substitute.For <IDice>(); dice.Roll().Returns(new RollResult(1, 2)); // Act player.TakeTurn(dice, realBoard); // Assert player.Money.Should().Be(1500); realBoard[player.CurrentSquare].Owner.Should().Be(player); }
public void ShouldPayRentOnOwnedRailroad() { // Arrange Square[] realBoard = TestBoards.RealBoard(); var landlord = new Player(Token.Battleship, "Landlord"); realBoard[5].Owner = landlord; var player = new Player(Token.Automobile, "Test"); var dice = Substitute.For <IDice>(); dice.Roll().Returns(new RollResult(3, 2)); // Act player.TakeTurn(dice, realBoard); // Assert player.Money.Should().Be(1475); landlord.Money.Should().Be(1525); realBoard[player.CurrentSquare].Owner.Should().Be(landlord); }