método indefinido (NoMethodError) ruby

Sigo recibiendo el siguiente mensaje de error:

text.rb:2:in `<main>': undefined method `choices' for main:Object (NoMethodError)

Pero parece que no puedo entender por qué mi método es "indefinido":

puts "Select [1] [2] [3] or [q] to quit"; users_choice = gets.chomp 
choices(users_choice)

def choices (choice)    
   while choice != 'q'      
        case choice

        when '1' 
            puts "you chose one!"

        when '2'
            puts "you chose two!"

        when '3'
            puts "you chose three!"
        end     
   end 
end

Respuestas a la pregunta(3)

Su respuesta a la pregunta