Class: Pact::MockService::App
- Inherits:
-
Object
- Object
- Pact::MockService::App
- Defined in:
- lib/pact/mock_service/app.rb
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(options = {}) ⇒ App
constructor
A new instance of App.
- #shutdown ⇒ Object
- #to_s ⇒ Object
- #write_pact_if_configured ⇒ Object
Constructor Details
#initialize(options = {}) ⇒ App
Returns a new instance of App.
19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/pact/mock_service/app.rb', line 19 def initialize = {} logger = Logger.() @name = .fetch(:name, "MockService") @session = Session.new(.merge(logger: logger)) request_handlers = RequestHandlers.new(@name, logger, @session, ) @app = Rack::Builder.app do use Pact::Consumer::MockService::ErrorHandler, logger use Pact::Consumer::CorsOriginHeaderMiddleware, [:cors_enabled] run request_handlers end end |
Instance Method Details
#call(env) ⇒ Object
31 32 33 |
# File 'lib/pact/mock_service/app.rb', line 31 def call env @app.call env end |
#shutdown ⇒ Object
35 36 37 |
# File 'lib/pact/mock_service/app.rb', line 35 def shutdown write_pact_if_configured end |
#to_s ⇒ Object
44 45 46 |
# File 'lib/pact/mock_service/app.rb', line 44 def to_s "#{@name} #{super.to_s}" end |
#write_pact_if_configured ⇒ Object
39 40 41 42 |
# File 'lib/pact/mock_service/app.rb', line 39 def write_pact_if_configured consumer_contract_writer = ConsumerContractWriter.new(@session.consumer_contract_details, StdoutLogger.new) consumer_contract_writer.write if consumer_contract_writer.can_write? end |