Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save bjornmicallef/f2489cb150c55279ff442372694640b9 to your computer and use it in GitHub Desktop.
Save bjornmicallef/f2489cb150c55279ff442372694640b9 to your computer and use it in GitHub Desktop.
public class Response
{
public string Description { get; set; }
public Response(Result result)
{
Description = GetResponseFromResult(result);
}
private string GetResponseFromResult(Result result)
{
switch (result)
{
case Result.MissingGridInput:
case Result.InvalidGridInput:
case Result.InvalidMinesInput:
case Result.InvalidExitInput:
case Result.MissingStartInput:
case Result.InvalidStartInput:
case Result.InvalidMovesInput:
case Result.OutOfBoundsMines:
case Result.OutOfBoundsExit:
case Result.OutOfBoundsStart:
case Result.MineSamePositionStartExit:
case Result.StartExitSamePosition:
return $"Error - {Util.GetEnumDescription(result)}";
case Result.TurtleOutside:
return $"Outside Grid - {Util.GetEnumDescription(result)}";
case Result.TurtleMine:
return $"Mine Hit - {Util.GetEnumDescription(result)}";
case Result.TurtleExit:
return $"Success - {Util.GetEnumDescription(result)}";
case Result.TurtleLost:
return $"Still in Danger - {Util.GetEnumDescription(result)}";
default:
throw new ArgumentOutOfRangeException();
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment