module OpenapiRspec::ModuleHelpers

Public Instance Methods

delete(*args, &block) click to toggle source
# File lib/openapi_rspec/module_helpers.rb, line 42
def delete(*args, &block)
  process(:delete, *args, &block)
end
get(*args, &block) click to toggle source
# File lib/openapi_rspec/module_helpers.rb, line 30
def get(*args, &block)
  process(:get, *args, &block)
end
head(*args, &block) click to toggle source
# File lib/openapi_rspec/module_helpers.rb, line 46
def head(*args, &block)
  process(:head, *args, &block)
end
headers(&block) click to toggle source
# File lib/openapi_rspec/module_helpers.rb, line 22
def headers(&block)
  let(:openapi_rspec_headers, &block)
end
media_type(&block) click to toggle source
# File lib/openapi_rspec/module_helpers.rb, line 18
def media_type(&block)
  let(:openapi_rspec_media_type, &block)
end
params(&block) click to toggle source
# File lib/openapi_rspec/module_helpers.rb, line 14
def params(&block)
  let(:openapi_rspec_params, &block)
end
patch(*args, &block) click to toggle source
# File lib/openapi_rspec/module_helpers.rb, line 50
def patch(*args, &block)
  process(:patch, *args, &block)
end
post(*args, &block) click to toggle source
# File lib/openapi_rspec/module_helpers.rb, line 34
def post(*args, &block)
  process(:post, *args, &block)
end
process(method, uri) { || ... } click to toggle source
# File lib/openapi_rspec/module_helpers.rb, line 54
def process(method, uri)
  metadata[:openapi_rspec] = {uri: uri, method: method}
  let(:openapi_rspec_media_type) { "application/json" }
  let(:openapi_rspec_params) { {} }
  let(:openapi_rspec_headers) { {} }
  let(:openapi_rspec_query) { {} }
  context "#{method.to_s.upcase} #{uri}" do
    yield if block_given?
  end
end
put(*args, &block) click to toggle source
# File lib/openapi_rspec/module_helpers.rb, line 38
def put(*args, &block)
  process(:put, *args, &block)
end
query(&block) click to toggle source
# File lib/openapi_rspec/module_helpers.rb, line 26
def query(&block)
  let(:openapi_rspec_query, &block)
end
validate_code(code, &block) click to toggle source
# File lib/openapi_rspec/module_helpers.rb, line 5
def validate_code(code, &block)
  specify do |example|
    metadata = example.metadata[:openapi_rspec]
    validator = RequestValidator.new(**request_params(metadata), code: code)
    expect(subject).to validator
    instance_exec validator, &block if block_given?
  end
end