Sha256: 9b0e32216f3dd6d002e6a0e7c3dd0e55c132c280552df040703bd52a62dde76c
Contents?: true
Size: 1.39 KB
Versions: 1
Compression:
Stored size: 1.39 KB
Contents
module JSONSchemer module Fuzz class Keyword class Maximum class << self def invalid_params(attributes) maximum_value = attributes["maximum"] raise "No maximum keyword given: #{attributes}" unless maximum_value generated_params = [] unit_value = (attributes.key?("type") && attributes["type"] == "integer") ? 1 : 0.1 if attributes["exclusiveMaximum"] generated_params.push(maximum_value) else generated_params.push(maximum_value + unit_value) end generated_params end def valid_param(attributes) maximum_value = attributes["maximum"] raise "No maximum keyword given: #{attributes}" unless maximum_value unit_value = (attributes.key?("type") && attributes["type"] == "integer") ? 1 : 0.1 maximum_value -= unit_value if attributes["exclusiveMaximum"] if minimum_value = attributes["minimum"] minimum_value += unit_value if attributes["exclusiveMinimum"] if attributes["exclusiveMaximum"] Random.rand(minimum_value...maximum_value) else Random.rand(minimum_value..maximum_value) end else maximum_value end end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
json_schemer-fuzz-1.0.0 | lib/json_schemer/fuzz/keyword/maximum.rb |