Class: ScalarRubyTest::Resources::Ping::ResultResponses

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

Instance Method Summary collapse

Constructor Details

#initialize(raw_resource) ⇒ ResultResponses

Returns a new instance of ResultResponses.



54
55
56
# File 'lib/amritk-scalar-test/resources/ping.rb', line 54

def initialize(raw_resource)
  @raw_resource = raw_resource
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(name, *args, **kwargs, &block) ⇒ Object



58
59
60
61
62
63
64
# File 'lib/amritk-scalar-test/resources/ping.rb', line 58

def method_missing(name, *args, **kwargs, &block)
  raw = @raw_resource.public_send(name, *args, **kwargs, &block)
  Runtime::ResultResponse.new(data: raw.data, status: raw.status, headers: raw.headers, body: raw.body)
rescue APIError => e
  raise if e.status.nil?
  Runtime::ResultResponse.new(error: e.body, status: e.status, headers: e.headers, body: e.raw_body)
end

Instance Method Details

#respond_to_missing?(name, include_private = false) ⇒ Boolean

Returns:

  • (Boolean)


66
67
68
# File 'lib/amritk-scalar-test/resources/ping.rb', line 66

def respond_to_missing?(name, include_private = false)
  @raw_resource.respond_to?(name, include_private) || super
end