public void SetUp() { initialState = BattleshipGameState.Empty(gridSize); initialState.Grid[0][0] = BattleshipGridCell.Ship; initialState.Grid[0][1] = BattleshipGridCell.Ship; initialState.Grid[0][2] = BattleshipGridCell.Ship; state1 = BattleshipGameState.Empty(gridSize); state1.Grid[0][0] = BattleshipGridCell.Hit; state1.Grid[0][1] = BattleshipGridCell.Ship; state1.Grid[0][2] = BattleshipGridCell.Ship; state2 = BattleshipGameState.Empty(gridSize); state2.Grid[0][0] = BattleshipGridCell.Hit; state2.Grid[0][1] = BattleshipGridCell.Hit; state2.Grid[0][2] = BattleshipGridCell.Ship; state3 = BattleshipGameState.Empty(gridSize); state3.Grid[0][0] = BattleshipGridCell.Hit; state3.Grid[0][1] = BattleshipGridCell.Hit; state3.Grid[0][2] = BattleshipGridCell.Hit; _console = Substitute.For <IConsole>(); _stateBuilder = Substitute.For <IBattleshipStateBuilder>(); _stateBuilder.Build().Returns(initialState); _gameShowService = Substitute.For <IShowGameState>(); _serviceUnderTests = new BattleshipGame(_console, _stateBuilder, _gameShowService); }
public BattleshipGame( IConsole console, IBattleshipStateBuilder stateBuilder, IShowGameState gameShowService) : this(console, stateBuilder, gameShowService, stateBuilder.Build()) { }
public BattleshipGame( IConsole console, IBattleshipStateBuilder stateBuilder, IShowGameState gameShowService, BattleshipGameState gameState ) { _console = console; _stateBuilder = stateBuilder; _gameShowService = gameShowService; _gameState = gameState; }
public void SetUp() { var charService = Substitute.For <IConvertCharService>(); charService.GetLetter(0).Returns('A'); charService.GetLetter(1).Returns('B'); charService.GetLetter(2).Returns('C'); charService.GetLetter(3).Returns('D'); charService.GetLetter(4).Returns('E'); charService.GetLetter(5).Returns('F'); charService.GetLetter(6).Returns('G'); charService.GetLetter(7).Returns('H'); charService.GetLetter(8).Returns('I'); charService.GetLetter(9).Returns('J'); _consoleOut = ""; var console = Substitute.For <IConsole>(); console .When(c => c.WriteLine(Arg.Any <string>())) .Do(callinfo => { var line = callinfo.ArgAt <string>(0); _consoleOut = $"{_consoleOut}{line}\r\n"; }); var config = Substitute.For <IBattleshipsConfiguration>(); config.GridSize.Returns(gridSize); config.Empty.Returns(' '); config.Hit.Returns('*'); config.Miss.Returns('x'); var mapper = Substitute.For <ICellMapper>(); mapper.GetCellValueToDisplay(BattleshipGridCell.Empty).Returns(' '); mapper.GetCellValueToDisplay(BattleshipGridCell.Ship).Returns(' '); mapper.GetCellValueToDisplay(BattleshipGridCell.Hit).Returns('*'); mapper.GetCellValueToDisplay(BattleshipGridCell.Miss).Returns('x'); _serviceUnderTests = new ShowGameStateService(charService, console, config, mapper); }