public IActionResult createBoard([FromBody] BoardCreationDto creationDto) { BoardGame board = boardCreationService.createBoardGame(creationDto.size); List <Player> players = playerCreationService.createPlayers(creationDto.players); return(ExecuteApiAction(() => new ApiResult <BoardGameDTO> { Model = gameService.processMove(board, players[0], players) })); }
public void WillPassTheSizeFromTheCreationDtoToTheBoardCreation() { BoardCreationDto boardCreationDto = new BoardCreationDto(); boardCreationDto.size = 3; Mock <IPlayerCreationService> mockPlayerService = new Mock <IPlayerCreationService>(); mockPlayerService.Setup(x => x.createPlayers(It.IsAny <List <JObject> >())) .Returns(new List <Player> { new Mock <Player>().Object }); Mock <BoardCreationService> mockCreationService = new Mock <BoardCreationService>(MockBehavior.Strict); mockCreationService.Setup(x => x.createBoardGame(3)).Returns((BoardGame)null).Verifiable(); cont = new GameController(new Mock <IGameService>().Object, mockCreationService.Object, mockPlayerService.Object); cont.createBoard(boardCreationDto); mockCreationService.Verify(); }
public void WillPassThePlayersFromThePlayerArrayToThePlayerCreationService() { BoardCreationDto boardCreationDto = new BoardCreationDto(); boardCreationDto.players = new List <JObject> { new JObject() }; Mock <BoardCreationService> mockCreationService = new Mock <BoardCreationService>(); Mock <IPlayerCreationService> mockPlayerService = new Mock <IPlayerCreationService>(MockBehavior.Strict); mockPlayerService.Setup(x => x.createPlayers(boardCreationDto.players)) .Returns(new List <Player> { new Mock <Player>().Object }) .Verifiable(); cont = new GameController(new Mock <IGameService>().Object, mockCreationService.Object, mockPlayerService.Object); cont.createBoard(boardCreationDto); mockPlayerService.Verify(); }
public void WillPassTheFirstPlayerReturnedAsTheCurrentPlayerToTheGameService() { Mock <IGameService> mockGameServce = new Mock <IGameService>(MockBehavior.Strict); Mock <BoardCreationService> mockCreationService = new Mock <BoardCreationService>(); Mock <IPlayerCreationService> mockPlayerService = new Mock <IPlayerCreationService>(); Mock <Player> mockPlayer = new Mock <Player>(); mockPlayerService.Setup(x => x.createPlayers(It.IsAny <List <JObject> >())) .Returns(new List <Player> { mockPlayer.Object, null }); mockGameServce.Setup(x => x.processMove(null, mockPlayer.Object, It.IsAny <List <Player> >())) .Returns((BoardGameDTO)null) .Verifiable(); BoardCreationDto creationDto = new BoardCreationDto(); cont = new GameController(mockGameServce.Object, mockCreationService.Object, mockPlayerService.Object); cont.createBoard(creationDto); mockGameServce.Verify(); }