system не возвращает результат исполнения команды. В твоем случае она просто возвращает TRUE все время.
Если хочешь выполнять команду и возвращать результат ее исполнения, то пользуйся вот этим:
ruby-doc.org/core-2.3.0/Kernel.html#method-i-60url = gets.chomp.to_s
qa = `curl -Is #{url} |head -n1 | grep -Eo '[0-9]{3,3}'`.to_i
case qa
when 200..299 then puts 'OK'
when 300..399 then puts 'Redirect'
when 400..499 then puts 'Client Error'
when 500..599 then puts 'Server Error'
else
if qa != 0-9 || qa <= 600 || 199 <= qa
puts 'Timeout'
else
puts 'Unknown error occurred'
end
end