Class: Pact::MockService::RunStandaloneMockService

Inherits:
Object
  • Object
show all
Defined in:
lib/pact/mock_service/cli.rb

Class Method Summary collapse

Class Method Details

.call(options) ⇒ Object



32
33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/pact/mock_service/cli.rb', line 32

def self.call options
  require 'pact/consumer/mock_service/app'
  service_options = {}
  if options[:log]
    log = File.open(options[:log], 'w')
    log.sync = true
    service_options[:log_file] = log
  end

  port = options[:port] || FindAPort.available_port
  mock_service = Pact::Consumer::MockService.new(service_options)
  trap(:INT) { Rack::Handler::WEBrick.shutdown }
  Rack::Handler::WEBrick.run(mock_service, :Port => port, :AccessLog => [])
end