Class: RspecApiDocumentation::Writers::OpenApiExample

Inherits:
Object
  • Object
show all
Defined in:
lib/rspec_api_documentation/writers/open_api_writer.rb

Instance Method Summary collapse

Constructor Details

#initialize(example) ⇒ OpenApiExample

Returns a new instance of OpenApiExample.



219
220
221
# File 'lib/rspec_api_documentation/writers/open_api_writer.rb', line 219

def initialize(example)
  @example = example
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method, *args, &block) ⇒ Object



223
224
225
# File 'lib/rspec_api_documentation/writers/open_api_writer.rb', line 223

def method_missing(method, *args, &block)
  @example.send(method, *args, &block)
end

Instance Method Details

#http_methodObject



231
232
233
# File 'lib/rspec_api_documentation/writers/open_api_writer.rb', line 231

def http_method
  [:method]
end

#requestsObject



235
236
237
# File 'lib/rspec_api_documentation/writers/open_api_writer.rb', line 235

def requests
  super.select { |request| request[:request_method].to_s.downcase == http_method.to_s.downcase }
end

#respond_to?(method, include_private = false) ⇒ Boolean

Returns:

  • (Boolean)


227
228
229
# File 'lib/rspec_api_documentation/writers/open_api_writer.rb', line 227

def respond_to?(method, include_private = false)
  super || @example.respond_to?(method, include_private)
end

#routeObject



239
240
241
# File 'lib/rspec_api_documentation/writers/open_api_writer.rb', line 239

def route
  super.gsub(/:(?<parameter>[^\/]+)/, '{\k<parameter>}')
end