Class: Pact::Doc::InteractionViewModel
- Inherits:
-
Object
- Object
- Pact::Doc::InteractionViewModel
- Includes:
- ActiveSupportSupport
- Defined in:
- lib/pact/doc/interaction_view_model.rb
Instance Method Summary collapse
- #consumer_name ⇒ Object
- #description(start_of_sentence = false) ⇒ Object
- #has_provider_state? ⇒ Boolean
- #id ⇒ Object
-
#initialize(interaction, consumer_contract) ⇒ InteractionViewModel
constructor
A new instance of InteractionViewModel.
- #provider_name ⇒ Object
- #provider_state(start_of_sentence = false) ⇒ Object
- #request ⇒ Object
- #request_method ⇒ Object
- #request_path ⇒ Object
- #response ⇒ Object
- #response_status ⇒ Object
Constructor Details
#initialize(interaction, consumer_contract) ⇒ InteractionViewModel
Returns a new instance of InteractionViewModel.
11 12 13 14 |
# File 'lib/pact/doc/interaction_view_model.rb', line 11 def initialize interaction, consumer_contract @interaction = interaction @consumer_contract = consumer_contract end |
Instance Method Details
#consumer_name ⇒ Object
39 40 41 |
# File 'lib/pact/doc/interaction_view_model.rb', line 39 def consumer_name markdown_escape @consumer_contract.consumer.name end |
#description(start_of_sentence = false) ⇒ Object
55 56 57 58 |
# File 'lib/pact/doc/interaction_view_model.rb', line 55 def description start_of_sentence = false return '' unless @interaction.description markdown_escape apply_capitals(@interaction.description.strip, start_of_sentence) end |
#has_provider_state? ⇒ Boolean
47 48 49 |
# File 'lib/pact/doc/interaction_view_model.rb', line 47 def has_provider_state? @interaction.provider_state && !@interaction.provider_state.empty? end |
#id ⇒ Object
16 17 18 19 20 21 22 23 24 25 |
# File 'lib/pact/doc/interaction_view_model.rb', line 16 def id @id ||= begin full_desc = if has_provider_state? "#{description} given #{interaction.provider_state}" else description end CGI.escapeHTML(full_desc.gsub(/\s+/,'_')) end end |
#provider_name ⇒ Object
43 44 45 |
# File 'lib/pact/doc/interaction_view_model.rb', line 43 def provider_name markdown_escape @consumer_contract.provider.name end |
#provider_state(start_of_sentence = false) ⇒ Object
51 52 53 |
# File 'lib/pact/doc/interaction_view_model.rb', line 51 def provider_state start_of_sentence = false markdown_escape apply_capitals(@interaction.provider_state.strip, start_of_sentence) end |
#request ⇒ Object
60 61 62 |
# File 'lib/pact/doc/interaction_view_model.rb', line 60 def request fix_json_formatting JSON.pretty_generate(clean_request) end |
#request_method ⇒ Object
27 28 29 |
# File 'lib/pact/doc/interaction_view_model.rb', line 27 def request_method interaction.request.method.upcase end |
#request_path ⇒ Object
31 32 33 |
# File 'lib/pact/doc/interaction_view_model.rb', line 31 def request_path interaction.request.path end |
#response ⇒ Object
64 65 66 |
# File 'lib/pact/doc/interaction_view_model.rb', line 64 def response fix_json_formatting JSON.pretty_generate(clean_response) end |
#response_status ⇒ Object
35 36 37 |
# File 'lib/pact/doc/interaction_view_model.rb', line 35 def response_status interaction.response.status end |