From 737fc65f7677618eae678ebacd635b65b540295f Mon Sep 17 00:00:00 2001 From: Colum O'Donovan Date: Fri, 10 Nov 2023 16:05:52 +0000 Subject: [PATCH] Refactor turn left to remove case/when --- lib/mars_rover.rb | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/lib/mars_rover.rb b/lib/mars_rover.rb index 3888395..005675a 100644 --- a/lib/mars_rover.rb +++ b/lib/mars_rover.rb @@ -5,6 +5,13 @@ class MarsRover attr_reader :point + LEFT_LOOKUP = { + 'E' => 'N', + 'S' => 'E', + 'W' => 'S', + 'N' => 'W' + } + def initialize(point) @point = point end @@ -55,18 +62,7 @@ def move_backward end def turn_left - case point.direction - when 'E' - new_direction = 'N' - when 'S' - new_direction = 'E' - when 'W' - new_direction = 'S' - when 'N' - new_direction = 'W' - end - - @point = Point.new(@point.x, @point.y, new_direction) + @point = Point.new(@point.x, @point.y, LEFT_LOOKUP[point.direction]) end