Module: Alchemrest::WebmockHelpers

Defined in:
lib/alchemrest/webmock_helpers.rb

Class Method Summary collapse

Class Method Details

.stub_alchemrest_request(alchemrest_request, with_request_body: false, with_headers: false) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/alchemrest/webmock_helpers.rb', line 5

module_function def stub_alchemrest_request(alchemrest_request, with_request_body: false, with_headers: false)
  stub_url = if defined?(alchemrest_request.url)
               alchemrest_request.url
             else
               Addressable::Template.new("http://{host}#{alchemrest_request.path}")
             end

  http_method = alchemrest_request.http_method.to_sym

  stub = if with_request_body
           stub_request(http_method, stub_url).with(body: alchemrest_request.body)
         else
           stub_request(http_method, stub_url)
         end

  if with_headers
    stub.with(headers: alchemrest_request.headers)
  else
    stub
  end
end