約数の最大値なら

def divisor(n)
 raise if Integer != n or n < 1
 return n
end

で十分だろう。