Class: RspecApiDocs::Dsl::RequestStore
- Inherits:
-
Object
- Object
- RspecApiDocs::Dsl::RequestStore
- Defined in:
- lib/rspec_api_docs/dsl/request_store.rb
Overview
Used to store request/response pairs.
Instance Attribute Summary collapse
-
#metadata ⇒ Object
readonly
Returns the value of attribute metadata.
Instance Method Summary collapse
-
#<<(value) ⇒ void
Only needed if you need to store multiple requests for a single example.
-
#initialize(example) ⇒ RequestStore
constructor
A new instance of RequestStore.
Constructor Details
#initialize(example) ⇒ RequestStore
Returns a new instance of RequestStore.
7 8 9 |
# File 'lib/rspec_api_docs/dsl/request_store.rb', line 7 def initialize(example) @metadata = example. end |
Instance Attribute Details
#metadata ⇒ Object (readonly)
Returns the value of attribute metadata.
5 6 7 |
# File 'lib/rspec_api_docs/dsl/request_store.rb', line 5 def @metadata end |
Instance Method Details
#<<(value) ⇒ void
This method returns an undefined value.
Only needed if you need to store multiple requests for a single example.
Usage:
it 'stores the requests a character' do
doc do
explanation 'Creating and requesting a character'
end
post '/characters', {name: 'Finn The Human'}
doc << [last_request, last_response]
get '/characters/1'
# The last request/response pair is stored automatically
end
31 32 33 34 |
# File 'lib/rspec_api_docs/dsl/request_store.rb', line 31 def <<(value) [METADATA_NAMESPACE][:requests] ||= [] [METADATA_NAMESPACE][:requests] << value.sort_by { |v| v.class.name }.reverse end |