Sha256: 5da286426e98885af0b6cfb3781eee0c7d0484ac18ad16bc2336dc50f16ecccf

Contents?: true

Size: 1.72 KB

Versions: 86

Compression:

Stored size: 1.72 KB

Contents

require 'pact/provider/state/provider_state'
require 'pact/provider/state/provider_state_configured_modules'
require 'pact/provider/state/set_up'
require 'pact/provider/state/tear_down'

module Pact

  module Provider

    module Configuration

      module ConfigurationExtension

        attr_accessor :provider_application_version

        def provider= provider
          @provider = provider
        end

        def provider
          if defined? @provider
            @provider
          else
            raise "Please configure your provider. See the Provider section in the README for examples."
          end
        end

        def config_ru_path
          @config_ru_path ||= './config.ru'
        end

        def config_ru_path= config_ru_path
          @config_ru_path = config_ru_path
        end

        def interactions_replay_order
          @interactions_replay_order ||= :recorded #or :random
        end

        def interactions_replay_order= interactions_replay_order
          @interactions_replay_order = interactions_replay_order.to_sym
        end

        def provider_state_set_up
          @provider_state_set_up ||= Pact::Provider::State::SetUp
        end

        def provider_state_set_up= provider_state_set_up
          @provider_state_set_up = provider_state_set_up
        end

        def provider_state_tear_down
          @provider_state_tear_down ||= Pact::Provider::State::TearDown
        end

        def provider_state_tear_down= provider_state_tear_down
          @provider_state_tear_down = provider_state_tear_down
        end

        def include mod
          Pact::Provider::State::ProviderStateConfiguredModules.instance_eval do
            include mod
          end
        end

      end
    end
  end
end

Version data entries

86 entries across 86 versions & 1 rubygems

Version Path
pact-1.66.1 lib/pact/provider/configuration/configuration_extension.rb
pact-1.66.0 lib/pact/provider/configuration/configuration_extension.rb
pact-1.65.3 lib/pact/provider/configuration/configuration_extension.rb
pact-1.65.2 lib/pact/provider/configuration/configuration_extension.rb
pact-1.65.1 lib/pact/provider/configuration/configuration_extension.rb
pact-1.65.0 lib/pact/provider/configuration/configuration_extension.rb
pact-1.64.0 lib/pact/provider/configuration/configuration_extension.rb
pact-1.63.0 lib/pact/provider/configuration/configuration_extension.rb
pact-1.62.0 lib/pact/provider/configuration/configuration_extension.rb
pact-1.61.0 lib/pact/provider/configuration/configuration_extension.rb
pact-1.60.0 lib/pact/provider/configuration/configuration_extension.rb
pact-1.59.0 lib/pact/provider/configuration/configuration_extension.rb
pact-1.58.0 lib/pact/provider/configuration/configuration_extension.rb
pact-1.57.0 lib/pact/provider/configuration/configuration_extension.rb
pact-1.56.0 lib/pact/provider/configuration/configuration_extension.rb
pact-1.55.7 lib/pact/provider/configuration/configuration_extension.rb
pact-1.55.6 lib/pact/provider/configuration/configuration_extension.rb
pact-1.55.5 lib/pact/provider/configuration/configuration_extension.rb
pact-1.55.4 lib/pact/provider/configuration/configuration_extension.rb
pact-1.55.3 lib/pact/provider/configuration/configuration_extension.rb