public void Placing_X_on_42_on_initial_board_should_return_a_board() { //Arrange var board = Reversi.GetInitialState(); //Act var newBoard = Reversi.Move(board, 4, 2, 'X'); //Assert }
public void Placing_disc_on_occupied_space_should_throw() { //Arrange var board = Reversi.GetInitialState(); //Act void newBoard() => Reversi.Move(board, 3, 3, 'X'); //Assert Assert.Throws <ReversiException>(newBoard); }
public void Placing_X_on_54_on_initial_board_should_throw() { //Arrange var board = Reversi.GetInitialState(); //Act void newBoard() => Reversi.Move(board, 5, 4, 'X'); //Assert Assert.Throws <ReversiException>(newBoard); }
public void Placing_X_on_25_on_valid_board() { //Arrange var board = Reversi.GetInitialState(); board[4, 3] = 'X'; //Act void newBoard() => Reversi.Move(board, 2, 5, 'X'); //Assert Assert.Throws <ReversiException>(newBoard); }
public void Placing_X_on_24_on_initial_board_turns_discs() { //Arrange var board = Reversi.GetInitialState(); var expected = Reversi.GetInitialState(); expected[4, 2] = 'X'; expected[4, 3] = 'X'; //Act var newBoard = Reversi.Move(board, 2, 4, 'X'); //Assert Assert.That(newBoard, Is.EqualTo(expected)); }
public string AssignGameAgainstRandomBot(string playerKey) { var gameKey = Guid.NewGuid().ToString(); var g = new Model.Game { Board = Reversi.GetInitialState(), PlayerOne = playerKey }; var added = _database.TryAdd(gameKey, g); if (!added) { throw new ApplicationException("Game already added"); } var botName = $"randy_{Guid.NewGuid().ToString().Replace("-", "")}"; g.PlayerTwo = botName; return(gameKey); }
public string AssignGame(string playerKey) { var game = _database.FirstOrDefault(x => string.IsNullOrEmpty(x.Value.PlayerTwo)); if (game.Key is default(string)) { var gameKey = Guid.NewGuid().ToString(); var g = new Model.Game { Board = Reversi.GetInitialState(), PlayerOne = playerKey }; var added = _database.TryAdd(gameKey, g); if (!added) { throw new ApplicationException("Game already added"); } return(gameKey); } game.Value.PlayerTwo = playerKey; return(game.Key); }