Sha256: dff2796cce105f1e1a0109099d79aab98f6004dc2554245001a1358a2112ea36

Contents?: true

Size: 1.14 KB

Versions: 56

Compression:

Stored size: 1.14 KB

Contents

module Pact
  module Provider::State
    class ProviderStateManager

      attr_reader :provider_state_name, :params, :consumer

      def initialize provider_state_name, params, consumer
        @provider_state_name = provider_state_name
        @params = params
        @consumer = consumer
      end

      def set_up_provider_state
        get_global_base_provider_state.set_up(params)
        get_consumer_base_provider_state.set_up(params)
        if provider_state_name
          get_provider_state.set_up(params)
        end
      end

      def tear_down_provider_state
        if provider_state_name
          get_provider_state.tear_down(params)
        end
        get_consumer_base_provider_state.tear_down(params)
        get_global_base_provider_state.tear_down(params)
      end

      def get_provider_state
        Pact.provider_world.provider_states.get(provider_state_name, :for => consumer)
      end

      def get_consumer_base_provider_state
        Pact.provider_world.provider_states.get_base(:for => consumer)
      end

      def get_global_base_provider_state
        Pact.provider_world.provider_states.get_base
      end
    end
  end
end

Version data entries

56 entries across 56 versions & 1 rubygems

Version Path
pact-1.44.0 lib/pact/provider/state/provider_state_manager.rb
pact-1.43.1 lib/pact/provider/state/provider_state_manager.rb
pact-1.43.0 lib/pact/provider/state/provider_state_manager.rb
pact-1.42.3 lib/pact/provider/state/provider_state_manager.rb
pact-1.42.2 lib/pact/provider/state/provider_state_manager.rb
pact-1.42.1 lib/pact/provider/state/provider_state_manager.rb
pact-1.42.0 lib/pact/provider/state/provider_state_manager.rb
pact-1.41.2 lib/pact/provider/state/provider_state_manager.rb
pact-1.41.1 lib/pact/provider/state/provider_state_manager.rb
pact-1.41.0 lib/pact/provider/state/provider_state_manager.rb
pact-1.40.0 lib/pact/provider/state/provider_state_manager.rb
pact-1.39.0 lib/pact/provider/state/provider_state_manager.rb
pact-1.38.0 lib/pact/provider/state/provider_state_manager.rb
pact-1.37.0 lib/pact/provider/state/provider_state_manager.rb
pact-1.36.2 lib/pact/provider/state/provider_state_manager.rb
pact-1.36.0 lib/pact/provider/state/provider_state_manager.rb