Ejemplo n.º 1
0
        public void PaintNewGrid_SimpleRun_GridIsPainted()
        {
            var gridSize = new GridSize(5, 8);

            _cursorHelperMock.Setup(x => x.SetGridSize(gridSize));
            _gridPainterMock.Setup(x => x.PaintNewGrid(gridSize));
            _textResultDisplayerMock.Setup(x => x.DisplayResult(null));

            _sut.PaintNewGrid(gridSize);
        }
Ejemplo n.º 2
0
        public void PaintNewGrid_SimpleRun_GridIsPainted()
        {
            var gridSize = new GridSize(5, 8);

            _cursorHelperMock.Setup(x => x.SetGridSize(gridSize));
            _gridPainterMock.Setup(x => x.PaintNewGrid(gridSize));
            _textResultDisplayerMock.Setup(x => x.DisplayResult(null));

            _sut.PaintNewGrid(gridSize);

            _cursorHelperMock.Verify(x => x.SetGridSize(It.IsAny <GridSize>()), Times.Once);
            _cursorHelperMock.Verify(x => x.SetGridSize(gridSize), Times.Once);
            _gridPainterMock.Verify(x => x.PaintNewGrid(It.IsAny <GridSize>()), Times.Once);
            _gridPainterMock.Verify(x => x.PaintNewGrid(gridSize), Times.Once);
            _gridResultPainterMock.Verify(x => x.PaintResult(It.IsAny <ShotResult>()), Times.Never);
            _textResultDisplayerMock.Verify(x => x.DisplayResult(It.IsAny <ShotResult>()), Times.Once);
            _textResultDisplayerMock.Verify(x => x.DisplayResult(null), Times.Once);
            _soundPlayerMock.Verify(x => x.PlayResult(It.IsAny <ShotResult>()), Times.Never);
        }
Ejemplo n.º 3
0
        private void StartAndPlayGame()
        {
            var gridSizeEnvelope = _gameLogic.StartNewGame();

            if (!gridSizeEnvelope.Success)
            {
                _outputFacade.DisplayException(gridSizeEnvelope.ErrorDescription);
                return;
            }

            _outputFacade.PaintNewGrid(gridSizeEnvelope.Content);

            var result = new ShotResult();

            while (result.Kind != ShotResult.Kinds.GameEnd)
            {
                var userCommand = _inputReader.ReadUserCommand();

                result = GetNextMoveResult(userCommand);

                _outputFacade.MarkAndDisplayResult(result);
            }
        }