Project

General

Profile

« Previous | Next » 

Revision b953c6ae

Added by Tomer Brisker about 8 years ago

Fixes #14476 - Correctly handle casting of invalid real param values

View differences:

app/services/foreman/parameters/caster.rb
if value =~ /\A[-+]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][-+]?\d+)?\Z/
value.to_f
else
cast_value_integer value
cast_integer
end
end
end
test/lib/parameters/caster_test.rb
Foreman::Parameters::Caster.new(item, :attribute_name => :foo, :to => :hash).cast!
end
end
test "caster raises TypeError on invalid real" do
item = OpenStruct.new(:foo => "blah")
assert_raises(TypeError) do
Foreman::Parameters::Caster.new(item, :attribute_name => :foo, :to => :real).cast!
end
end
end
end

Also available in: Unified diff