Class: InputSanitizer::CommaJoinedIntegersConverter

Inherits:
Object
  • Object
show all
Defined in:
lib/input_sanitizer/extended_converters/comma_joined_integers_converter.rb

Instance Method Summary collapse

Instance Method Details

#call(value) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
# File 'lib/input_sanitizer/extended_converters/comma_joined_integers_converter.rb', line 3

def call(value)
  value = value.to_s
  non_valid = value.gsub(/[0-9,]/, "")

  if non_valid.empty?
    value.split(",").map(&:to_i)
  else
    invalid_chars = non_valid.split(//).join(", ")
    raise InputSanitizer::ConversionError.new("Invalid integers: #{invalid_chars}")
  end
end