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")); } }
public IActionResult Index() { var viewModel = new GridConfigurationViewModel() { Rows = 10, Columns = 10 }; return(View(viewModel)); }
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); }