Class: Object

Inherits:
BasicObject
Defined in:
lib/generators/swift/scaffold/_build/features/steps/cucumer_rest_monkey_patch.rb

Instance Method Summary collapse

Instance Method Details

#perform_delete_request(uri, request_opts) ⇒ Object



34
35
36
37
38
39
40
41
42
43
# File 'lib/generators/swift/scaffold/_build/features/steps/cucumer_rest_monkey_patch.rb', line 34

def perform_delete_request uri,request_opts
  request = Net::HTTP::Delete.new(uri.request_uri)
  body = nil
  if request_opts[:params]
    body = request_opts[:params].to_json
  else
    body = request_opts[:input]
  end
  return request, body
end

#request(path, request_opts) ⇒ Object



2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/generators/swift/scaffold/_build/features/steps/cucumer_rest_monkey_patch.rb', line 2

def request path,request_opts
  req = "#{$SERVER_PATH}" + path
  uri = URI.parse(req)

  http = Net::HTTP.new(uri.host, uri.port)

  if request_opts[:method] == :post
        request, body = send_post_request(uri, request_opts)
  elsif request_opts[:method] == :put
        request, body  = perform_put_request(uri, request_opts)
  elsif request_opts[:method] == :get
        request = send_get_request(uri, request_opts)
  elsif request_opts[:method] == :delete
        request, body = perform_delete_request(uri, request_opts)
  end

  #do we have any headers to add?
  if @headers != nil
    @headers.each { |k,v| request.add_field(k, v) }
    @headers = nil
  end

  if req.include? "https"
      http.use_ssl = true
      http.verify_mode = OpenSSL::SSL::VERIFY_NONE
      @response = http.request(request,body)
  else
     http = Net::HTTP.new(uri.host, uri.port)
     @response = http.request(request,body)
  end
end