Module: RSpec::Rails::Api::DSL::ExampleGroup
- Defined in:
- lib/rspec/rails/api/dsl/example_group.rb
Overview
All these methods will be available in example groups (anything but ‘it’, ‘example’, ‘for_code’)
Instance Method Summary collapse
-
#entity(type, fields) ⇒ Object
Used to describe an entity.
- #for_code(status_code, description, doc_only: false, &block) ⇒ Object
-
#on_action(action, url, description, &block) ⇒ Object
Currently fill metadatas with the action.
- #on_delete(url, description = nil, &block) ⇒ Object
- #on_get(url, description = nil, &block) ⇒ Object
- #on_patch(url, description = nil, &block) ⇒ Object
- #on_post(url, description = nil, &block) ⇒ Object
- #on_put(url, description = nil, &block) ⇒ Object
-
#path_params(fields) ⇒ Object
Used to describe query parameters.
- #request_params(fields) ⇒ Object
-
#resource(name, description = '') ⇒ Object
First method to be called in a spec file as it will initialize the metadatas.
Instance Method Details
#entity(type, fields) ⇒ Object
Used to describe an entity
20 21 22 |
# File 'lib/rspec/rails/api/dsl/example_group.rb', line 20 def entity(type, fields) [:rrad].add_entity type, fields end |
#for_code(status_code, description, doc_only: false, &block) ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/rspec/rails/api/dsl/example_group.rb', line 60 def for_code(status_code, description, doc_only: false, &block) [:rrad].add_status_code(status_code, description) describe "-> #{status_code} - #{description}" do if (!ENV['DOC_ONLY'] || ENV['DOC_ONLY'] == 'false' || !doc_only) && block example 'Test and create documentation', caller: block.send(:caller) do instance_eval(&block) if block_given? end else document_only status_code end end end |
#on_action(action, url, description, &block) ⇒ Object
Currently fill metadatas with the action
54 55 56 57 58 |
# File 'lib/rspec/rails/api/dsl/example_group.rb', line 54 def on_action(action, url, description, &block) [:rrad].add_action(action, url, description) describe("#{action.upcase} #{url}", &block) end |
#on_delete(url, description = nil, &block) ⇒ Object
49 50 51 |
# File 'lib/rspec/rails/api/dsl/example_group.rb', line 49 def on_delete(url, description = nil, &block) on_action(:delete, url, description, &block) end |
#on_get(url, description = nil, &block) ⇒ Object
33 34 35 |
# File 'lib/rspec/rails/api/dsl/example_group.rb', line 33 def on_get(url, description = nil, &block) on_action(:get, url, description, &block) end |
#on_patch(url, description = nil, &block) ⇒ Object
45 46 47 |
# File 'lib/rspec/rails/api/dsl/example_group.rb', line 45 def on_patch(url, description = nil, &block) on_action(:patch, url, description, &block) end |
#on_post(url, description = nil, &block) ⇒ Object
37 38 39 |
# File 'lib/rspec/rails/api/dsl/example_group.rb', line 37 def on_post(url, description = nil, &block) on_action(:post, url, description, &block) end |
#on_put(url, description = nil, &block) ⇒ Object
41 42 43 |
# File 'lib/rspec/rails/api/dsl/example_group.rb', line 41 def on_put(url, description = nil, &block) on_action(:put, url, description, &block) end |
#path_params(fields) ⇒ Object
Used to describe query parameters
25 26 27 |
# File 'lib/rspec/rails/api/dsl/example_group.rb', line 25 def path_params(fields) [:rrad].add_path_params fields end |
#request_params(fields) ⇒ Object
29 30 31 |
# File 'lib/rspec/rails/api/dsl/example_group.rb', line 29 def request_params(fields) [:rrad].add_request_params fields end |