Я выполняю рефакторинг программы проверки и пытаюсь обработать запрос игрока на перемещение (например, в форме «3, 3, 5, 5») в массив int. У меня есть следующий метод, но он не такой рубиновый, как я знаю, это может быть:
def translate_move_request_to_coordinates(move_request)
return_array = []
coords_array = move_request.chomp.split(',')
coords_array.each_with_index do |i, x|
return_array[x] = i.to_i
end
return_array
end
У меня есть следующий тест RSpec с ним.
it "translates a move request string into an array of coordinates" do
player_input = "3, 3, 5, 5"
translated_array = @game.translate_move_request_to_coordinates(player_input)
translated_array.should == [3, 3, 5, 5]
end
Тест пройден, но я думаю, что код довольно уродливый. Любая помощь будет оценена. Спасибо.
Steve