class BankTools::AT::Account

Constants

MAX_LENGTH
MIN_LENGTH

Public Instance Methods

errors() click to toggle source
# File lib/banktools-at/account.rb, line 18
def errors
  errors = []

  errors << Errors::TOO_SHORT if compacted_value.length < MIN_LENGTH
  errors << Errors::TOO_LONG if compacted_value.length > MAX_LENGTH
  errors << Errors::INVALID_CHARACTERS if any_non_digits?

  errors
end
valid?() click to toggle source
# File lib/banktools-at/account.rb, line 14
def valid?
  errors.none?
end

Private Instance Methods

any_non_digits?() click to toggle source
# File lib/banktools-at/account.rb, line 30
def any_non_digits?
  compacted_value.match(/\D/)
end
compacted_value() click to toggle source
# File lib/banktools-at/account.rb, line 34
def compacted_value
  original_value.to_s.gsub(/[\s-]/, "")
end