Sha256: 48a11eba88edf5d47bb1d598f363ca7df0020b0564b5a1b8cf58b90743254214

Contents?: true

Size: 1.08 KB

Versions: 99

Compression:

Stored size: 1.08 KB

Contents

require 'pact/provider/pact_verification'
require 'pact/provider/pact_uri'
require 'pact/shared/dsl'
require 'pact/provider/world'

module Pact
  module Provider

    module Configuration

      class PactVerification

        extend Pact::DSL

        attr_accessor :consumer_name, :pact_uri, :ref

        def initialize consumer_name, options = {}
          @consumer_name = consumer_name
          @ref = options.fetch(:ref, :head)
          @pact_uri = nil
        end

        dsl do
          def pact_uri pact_uri, options = {}
            self.pact_uri = ::Pact::Provider::PactURI.new(pact_uri, options) if pact_uri
          end
        end

        def finalize
          validate
          create_pact_verification
        end

        private

        def create_pact_verification
          verification = Pact::Provider::PactVerification.new(consumer_name, pact_uri, ref)
          Pact.provider_world.add_pact_verification verification
        end

        def validate
          raise "Please provide a pact_uri for the verification" unless pact_uri
        end

      end
    end
  end
end

Version data entries

99 entries across 99 versions & 1 rubygems

Version Path
pact-1.30.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.29.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.28.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.28.0.rc1 lib/pact/provider/configuration/pact_verification.rb
pact-1.27.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.26.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.25.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.24.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.23.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.22.2 lib/pact/provider/configuration/pact_verification.rb
pact-1.22.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.21.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.20.1 lib/pact/provider/configuration/pact_verification.rb
pact-1.20.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.19.2 lib/pact/provider/configuration/pact_verification.rb
pact-1.19.1 lib/pact/provider/configuration/pact_verification.rb
pact-1.19.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.18.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.17.0 lib/pact/provider/configuration/pact_verification.rb
pact-1.16.1 lib/pact/provider/configuration/pact_verification.rb