コード例 #1
0
        public IActionResult Post(GridConfigurationViewModel model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(View("Index", model));
                }
                grid = new Grid(model.Rows, model.Columns);
                for (int i = 0; i < model.Battleships; i++)
                {
                    grid.BuildShip(5);
                }
                for (int i = 0; i < model.Destroyers; i++)
                {
                    grid.BuildShip(4);
                }

                var viewModel = new HomeViewModel(grid);
                return(View("Grid", viewModel));
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, "Error starting new game");
                return(View("Error"));
            }
        }
コード例 #2
0
        public IActionResult Index()
        {
            var viewModel = new GridConfigurationViewModel()
            {
                Rows    = 10,
                Columns = 10
            };

            return(View(viewModel));
        }
コード例 #3
0
        public void Post_CreateTwoShips_Success()
        {
            var model = new GridConfigurationViewModel
            {
                Rows        = 10,
                Columns     = 10,
                Battleships = 2
            };
            var result    = _controller.Post(model) as ViewResult;
            var viewModel = result.ViewData.Model as HomeViewModel;

            Assert.NotNull(result);
            Assert.Equal("Grid", result.ViewName);
            Assert.Equal(2, viewModel.Grid.Ships.Count);
        }