Class: DummyService
- Defined in:
- app/service_adaptors/dummy_service.rb
Overview
A Dummy service that may be useful for testing (manual or perhaps in automated tests), that simply creates the responses you tell it to, after sleeping the amount you tell it to.
DummyService:
type: DummyService
priority: 3
sleep: 4.5 # seconds
responses:
- service_type_value: fulltext
display_text: foo
url: http://google.com
- service_type_value: highlighted_link
display_text: bar
url: http://amazon.com
Constant Summary
Constants inherited from Service
Service::LinkOutFilterTask, Service::StandardTask
Instance Attribute Summary collapse
-
#responses ⇒ Object
Returns the value of attribute responses.
-
#sleep ⇒ Object
Returns the value of attribute sleep.
Attributes inherited from Service
#group, #name, #priority, #request, #service_id, #status, #task, #url
Instance Method Summary collapse
- #handle(request) ⇒ Object
-
#initialize(config = {}) ⇒ DummyService
constructor
A new instance of DummyService.
- #service_types_generated ⇒ Object
Methods inherited from Service
#credits, #display_name, #handle_wrapper, #link_out_filter, #preempted_by, required_config_params, #response_url, #translate
Constructor Details
#initialize(config = {}) ⇒ DummyService
Returns a new instance of DummyService.
21 22 23 24 25 |
# File 'app/service_adaptors/dummy_service.rb', line 21 def initialize(config = {}) self.responses = [] self.sleep = 0 super end |
Instance Attribute Details
#responses ⇒ Object
Returns the value of attribute responses.
19 20 21 |
# File 'app/service_adaptors/dummy_service.rb', line 19 def responses @responses end |
#sleep ⇒ Object
Returns the value of attribute sleep.
19 20 21 |
# File 'app/service_adaptors/dummy_service.rb', line 19 def sleep @sleep end |
Instance Method Details
#handle(request) ⇒ Object
31 32 33 34 35 36 37 38 39 40 |
# File 'app/service_adaptors/dummy_service.rb', line 31 def handle(request) ::Kernel.sleep( self.sleep ) if self.sleep responses.each do |response| request.add_service_response( { :service => self }.merge(response.symbolize_keys ) ) end return request.dispatched(self, true) end |
#service_types_generated ⇒ Object
27 28 29 |
# File 'app/service_adaptors/dummy_service.rb', line 27 def service_types_generated responses.collect {|r| ServiceTypeValue[ r["service_type_value"] ]}.compact.uniq end |