class GiantClient::MockAdapter
Attributes
requests[RW]
responses[RW]
Public Class Methods
new()
click to toggle source
# File lib/giant_client/mock_adapter.rb, line 8 def initialize @requests = [] @responses = [] end
Public Instance Methods
last_request()
click to toggle source
# File lib/giant_client/mock_adapter.rb, line 48 def last_request @requests[0] end
last_response()
click to toggle source
# File lib/giant_client/mock_adapter.rb, line 52 def last_response @responses[0] end
request(method, opts)
click to toggle source
# File lib/giant_client/mock_adapter.rb, line 13 def request(method, opts) last_request = MockRequest.new if BODYLESS_METHODS.include?(method) unless opts[:body] == '' last_request.raised_error = true last_request.error_type = GiantClient::Error::NotImplemented end end last_request.host = opts[:host] last_request.ssl = opts[:ssl] last_request.port = opts[:port] last_request.path = opts[:path] last_request.query = opts[:query] last_request.headers = opts[:headers] last_request.body = opts[:body] last_request.timeout = opts[:timeout] last_request.url = url_from_opts(opts) last_request.querystring = stringify_query(opts[:query]) last_response = { :status_code => 200, :headers => {}, :body => nil } @requests.unshift(last_request) @responses.unshift(last_response) self end
respond_with(hash)
click to toggle source
# File lib/giant_client/mock_adapter.rb, line 44 def respond_with(hash) @responses[0] = @responses[0].merge(hash) end