class Pact::ProviderVerifier::AggregatePactConfigs

Attributes

consumer_version_selectors[R]
consumer_version_tags[R]
http_client_options[R]
options[R]
pact_broker_base_url[R]
pact_urls[R]
provider_name[R]
provider_version_branch[R]
provider_version_tags[R]

Public Class Methods

call(pact_urls, provider_name, consumer_version_tags, consumer_version_selectors, provider_version_branch, provider_version_tags, pact_broker_base_url, http_client_options, options) click to toggle source
# File lib/pact/provider_verifier/aggregate_pact_configs.rb, line 9
def self.call(pact_urls, provider_name, consumer_version_tags, consumer_version_selectors, provider_version_branch, provider_version_tags, pact_broker_base_url, http_client_options, options)
  new(pact_urls, provider_name, consumer_version_tags, consumer_version_selectors, provider_version_branch, provider_version_tags, pact_broker_base_url, http_client_options, options).call
end
new(pact_urls, provider_name, consumer_version_tags, consumer_version_selectors, provider_version_branch, provider_version_tags, pact_broker_base_url, http_client_options, options) click to toggle source
# File lib/pact/provider_verifier/aggregate_pact_configs.rb, line 13
def initialize(pact_urls, provider_name, consumer_version_tags, consumer_version_selectors, provider_version_branch, provider_version_tags, pact_broker_base_url, http_client_options, options)
  @pact_urls = pact_urls
  @provider_name = provider_name
  @consumer_version_tags = consumer_version_tags
  @consumer_version_selectors = consumer_version_selectors
  @provider_version_branch = provider_version_branch
  @provider_version_tags = provider_version_tags
  @pact_broker_base_url = pact_broker_base_url
  @http_client_options = http_client_options
  @options = options
end

Public Instance Methods

call() click to toggle source
# File lib/pact/provider_verifier/aggregate_pact_configs.rb, line 25
def call
  pacts_urls_from_broker + specified_pact_uris
end

Private Instance Methods

aggregated_consumer_version_selectors() click to toggle source
# File lib/pact/provider_verifier/aggregate_pact_configs.rb, line 57
def aggregated_consumer_version_selectors
  consumer_version_selectors + consumer_version_tags.collect{ |tag| { tag: tag, latest: true } }
end
pact_options() click to toggle source
# File lib/pact/provider_verifier/aggregate_pact_configs.rb, line 61
def pact_options
  {
    include_pending_status: options[:enable_pending],
    include_wip_pacts_since: options[:include_wip_pacts_since]
  }
end
pacts_for_verification() click to toggle source
# File lib/pact/provider_verifier/aggregate_pact_configs.rb, line 45
def pacts_for_verification
  @pacts_for_verification ||= Pact::PactBroker.fetch_pact_uris_for_verification(
    provider_name,
    aggregated_consumer_version_selectors,
    provider_version_branch,
    provider_version_tags,
    pact_broker_base_url,
    http_client_options,
    pact_options
  )
end
pacts_urls_from_broker() click to toggle source
# File lib/pact/provider_verifier/aggregate_pact_configs.rb, line 37
def pacts_urls_from_broker
  if pact_broker_base_url && provider_name
    pacts_for_verification
  else
    []
  end
end
specified_pact_uris() click to toggle source
# File lib/pact/provider_verifier/aggregate_pact_configs.rb, line 33
def specified_pact_uris
  pact_urls.collect{ | url | Pact::PactBroker.build_pact_uri(url, http_client_options) }
end