class Pact::Consumer::Configuration::ServiceConsumer

def app app

def app app
  self.app = app
end

def finalize

def finalize
  validate
  register_consumer_app if @app
end

def has_pact_with service_provider_name, &block

def has_pact_with service_provider_name, &block
  ServiceProvider.build(service_provider_name, name, &block)
end

def initialize name

def initialize name
  @name = name
  @app = nil
  @port = nil
end

def port port

def port port
  self.port = port
end

def register_consumer_app

def register_consumer_app
  Pact::MockService::AppManager.instance.register app, port
end

def validate

def validate
  raise "Please provide a consumer name" unless (name && !name.empty?)
  raise "Please provide a port for the consumer app" if app && !port
end