Sha256: 8d3c72effa3400ccfba54bd1fa31063fa5a9c0881696047c7b07e1ff731c2989
Contents?: true
Size: 990 Bytes
Versions: 9
Compression:
Stored size: 990 Bytes
Contents
# tested via spec/core/middleware/response/raise_error_spec.rb module ZendeskAPI module Error class ClientError < Faraday::ClientError attr_reader :wrapped_exception def to_s if response "#{super} -- #{response.method} #{response.url}" else super end end end class RecordInvalid < ClientError attr_accessor :errors def initialize(*) super if response[:body].is_a?(Hash) @errors = response[:body]["details"] || generate_error_msg(response[:body]) end @errors ||= {} end def to_s "#{self.class.name}: #{@errors}" end private def generate_error_msg(response_body) response_body.values_at("description", "message", "error", "errors").compact.join(" - ") end end class NetworkError < ClientError; end class RecordNotFound < ClientError; end class RateLimited < ClientError; end end end
Version data entries
9 entries across 9 versions & 1 rubygems