Sha256: eebcbb57da938e73ffc8f014e58cdcd8ef9f85add2f3d96c420dc8510da26a7c

Contents?: true

Size: 1.16 KB

Versions: 4

Compression:

Stored size: 1.16 KB

Contents

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

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 include mod
          Pact::Provider::State::ProviderStateConfiguredModules.instance_eval do
            include mod
          end
        end

      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
pact-1.12.1 lib/pact/provider/configuration/configuration_extension.rb
pact-1.12.0 lib/pact/provider/configuration/configuration_extension.rb
pact-1.11.1 lib/pact/provider/configuration/configuration_extension.rb
pact-1.11.0 lib/pact/provider/configuration/configuration_extension.rb