Sha256: 24afd35630094ac3c5d1240a1d3a6caae7b0c2900e28da0752444b8ad27dfa52

Contents?: true

Size: 566 Bytes

Versions: 1

Compression:

Stored size: 566 Bytes

Contents

module CheckMot

  class Response
    def initialize(raw_response)
      @raw_response = raw_response
    end

    delegate :success?, :status, to: :raw_response

    def raw
      raw_response.body
    end

    def validate
      fail ResponseError.new(status, raw) unless success?
    end

    protected

    def parsed_response
      @_parsed_response ||= JSON.parse(raw_response.body)
    end

    private

    attr_reader :raw_response

    def transform(response_hash)
      response_hash.deep_transform_keys { |key| key.underscore.to_sym }
    end
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
check_mot-0.3.1 lib/check_mot/response.rb