Ваша ошибка заключается в следующем: choice = case
должно быть case choice
.
Вы предоставляете инструкцию case без объекта "default", поэтому первое предложение, when 1
, всегда возвращает true.
По сути, вы написали: choice = if 1 then ... elsif 2 then ... end
И, как упоминал Младен, сравнивайте строки со строками или конвертируйте в int: choice = gets.to_i