Module: Cetustek::ResultCode

Defined in:
lib/cetustek/errors.rb

Class Method Summary collapse

Class Method Details

.check!(code, messages, success:) ⇒ Object

Returns the code on success, otherwise raises ResultError.

Raises:



25
26
27
28
29
# File 'lib/cetustek/errors.rb', line 25

def self.check!(code, messages, success:)
  return code if code == success

  raise ResultError.new(code, describe(code, messages))
end

.describe(code, messages) ⇒ Object

Codes may carry a suffix naming the offending field or detail row ("M:AllowanceDate", "D2_3"), so an exact miss falls back to the table key without the suffix.



20
21
22
# File 'lib/cetustek/errors.rb', line 20

def self.describe(code, messages)
  messages[code] || messages[code.to_s.sub(/(?<=[:_]).*\z/, '')]
end