class BankTools::GB::SortCode

Constants

LENGTH

Public Instance Methods

compacted_value() click to toggle source
# File lib/banktools-gb/sort_code.rb, line 27
def compacted_value
  original_value.to_s.gsub(/[\s-]/, "")
end
errors() click to toggle source
# File lib/banktools-gb/sort_code.rb, line 17
def errors
  errors = []

  errors << Errors::SORT_CODE_TOO_SHORT if compacted_value.length < LENGTH
  errors << Errors::SORT_CODE_TOO_LONG if compacted_value.length > LENGTH
  errors << Errors::SORT_CODE_INVALID_CHARACTERS if any_non_digits?

  errors
end
valid?() click to toggle source
# File lib/banktools-gb/sort_code.rb, line 13
def valid?
  errors.none?
end

Private Instance Methods

any_non_digits?() click to toggle source
# File lib/banktools-gb/sort_code.rb, line 33
def any_non_digits?
  compacted_value.match(/\D/)
end