Class: BenchTool::CurlCmdBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/benchtool/curl-cmd-builder.rb

Instance Method Summary collapse

Constructor Details

#initialize(params, options = {}) ⇒ CurlCmdBuilder

Returns a new instance of CurlCmdBuilder.



4
5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/benchtool/curl-cmd-builder.rb', line 4

def initialize(params, options = {})
  @params = params
  @options = options
  # Sample curl status cmd
  # Flag --insecure allows use of self-signed certs
  # curl -siL --insecure --cookies '#{cookies}' --header '#{header}' "#{url}"
  @parts = {
    :base => "curl -siL ", 
    :insecure => "--insecure ", 
    :cookies => "--cookie '%s' ", 
    :header => "--header '%s' ", 
    :url => "'%s'", 
  }
end

Instance Method Details

#to_strObject



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/benchtool/curl-cmd-builder.rb', line 19

def to_str
  cmd = ""
  cmd << @parts[:base]
  cmd << @parts[:insecure]
  cmd << @parts[:cookies]      % @params[:cookies]
  unless @params[:headers].empty?
    @params[:headers].each do |header|
      cmd << @parts[:header]   % header
    end
  end
  cmd << @parts[:url]          % @params[:url]
end