Class: ScalarRubyTest::RequestOptions

Inherits:
Object
  • Object
show all
Defined in:
lib/amritk-scalar-test/request_options.rb

Constant Summary collapse

FIELDS =
[:idempotency_key, :extra_query, :extra_headers, :extra_body, :base_url, :url, :allow_auth_to_base_url, :max_retries, :timeout].freeze

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(values = {}) ⇒ RequestOptions

Returns a new instance of RequestOptions.



13
14
15
16
# File 'lib/amritk-scalar-test/request_options.rb', line 13

def initialize(values = {})
  self.class.validate!(values)
  @values = values.is_a?(self) ? values.to_h : values
end

Class Method Details

.validate!(opts) ⇒ Object

Raises:

  • (ArgumentError)


8
9
10
11
# File 'lib/amritk-scalar-test/request_options.rb', line 8

def self.validate!(opts)
  return if opts.is_a?(Hash) || opts.is_a?(self)
  raise ArgumentError.new("Request `opts` must be a Hash or RequestOptions, got #{opts.inspect}")
end

Instance Method Details

#to_hObject



18
19
20
# File 'lib/amritk-scalar-test/request_options.rb', line 18

def to_h
  @values
end