lib/trav3/result.rb in trav3-0.1.1 vs lib/trav3/result.rb in trav3-0.2.0

- old
+ new

@@ -8,39 +8,50 @@ You must either provide the digit name for the repository, or `user/repo` or `user%2Frepo` as the name." end end + class InvalidAPIEndpoint < StandardError + def message + "The API endpoint must be either + 'https://api.travis-ci.com' or + 'https://api.travis-ci.org'" + end + end + class Unimplemented < StandardError def message - "You need to implement this method" + "This feature is not implemented." end end class Response extend Forwardable + attr_reader :travis def_delegators :@json, :[], :dig, :keys, :values, :has_key? def_delegators :@response, :code, :code_type, :uri, :message, :read_header, :header, :value, :entity, :response, :body, :decode_content, :msg, :reading_body, :read_body, :http_version, :connection_close?, :connection_keep_alive?, :initialize_http_header, :get_fields, :each_header - def initialize(response) + def initialize(travis, response) + @travis = travis @response = response @json = JSON.parse(response.body) end def inspect "<#{self.class} Response: keys = #{self.keys}>" end def success?; raise Unimplemented end def failure?; raise Unimplemented end + private :travis end class Success < Response def page - Trav3::Pagination.new(self) + Trav3::Pagination.new(travis, self) end def success?; true end def failure?; false end end