public IActionResult Index(CoordinatesModel model) { // sets result for current rover var currentRover = model.Results[model.Results.Count - 1]; try { // sets end coordinates _coordinatesService.SetEnd(model.MaxCoordinates); // sets start position of rover _coordinatesService.SetCurrentPosition(currentRover.CurrentPosition); // calculates coordinates depending on route currentRover.Result = _coordinatesService.Calculate(currentRover.Movement); // adds result to model model.Results.Add(new RoverResultModel()); ModelState.Clear(); } catch (Exception ex) { ModelState.AddModelError("CustomError", ex.Message); } return(View(model)); }
public void SetEnd_String() { _coordinatesService.SetEnd("1 5"); Assert.Equal(2, _coordinatesService.End.Length); Assert.Equal(1, _coordinatesService.End[0]); Assert.Equal(5, _coordinatesService.End[1]); }