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 SetCurrentPosition_String() { _coordinatesService.SetEnd("5 5"); _coordinatesService.SetCurrentPosition("1 5 N"); }