16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
# File 'lib/consumer_score.rb', line 16
def self.get_score(income, zip_code, age)
raise ArgumentError.new("Income must be a number") if income.is_a?(Fixnum) == false
raise ArgumentError.new("Zip Code must be be the correct format (60201 or 60201-1111)") if !zip_code.match(/\d{5}[- ]\d{4}|\d{5}/)
raise ArgumentError.new("Age must be a number") if age.is_a?(Fixnum) == false
request = build_request(income, zip_code, age)
response = Net::HTTP.get_response(request)
if response.kind_of?(Net::HTTPSuccess)
score = JSON.parse(response.body)
else
RequestError.new(response.code, response.message)
end
end
|