Sha256: 5cdf0e92121dc4d10fee98aa88c41dc56742ef0e53936fcd417e3287a3f4c5f0

Contents?: true

Size: 1.94 KB

Versions: 2

Compression:

Stored size: 1.94 KB

Contents

module RSpec
  module Mocks
    # Provides configuration options for rspec-mocks.
    class Configuration

      def initialize
        @yield_receiver_to_any_instance_implementation_blocks = false
        @should_warn_about_any_instance_blocks = true
      end

      def yield_receiver_to_any_instance_implementation_blocks?
        @yield_receiver_to_any_instance_implementation_blocks
      end

      def yield_receiver_to_any_instance_implementation_blocks=(arg)
        @should_warn_about_any_instance_blocks = false
        @yield_receiver_to_any_instance_implementation_blocks = arg
      end

      def should_warn_about_any_instance_blocks?
        @should_warn_about_any_instance_blocks
      end

      # Adds `stub` and `should_receive` to the given
      # modules or classes. This is usually only necessary
      # if you application uses some proxy classes that
      # "strip themselves down" to a bare minimum set of
      # methods and remove `stub` and `should_receive` in
      # the process.
      #
      # @example
      #
      #   RSpec.configure do |rspec|
      #     rspec.mock_with :rspec do |mocks|
      #       mocks.add_stub_and_should_receive_to Delegator
      #     end
      #   end
      #
      def add_stub_and_should_receive_to(*modules)
        modules.each do |mod|
          Syntax.enable_should(mod)
        end
      end

      def syntax=(values)
        if Array(values).include?(:expect)
          Syntax.enable_expect
        else
          Syntax.disable_expect
        end

        if Array(values).include?(:should)
          Syntax.enable_should
        else
          Syntax.disable_should
        end
      end

      def syntax
        syntaxes = []
        syntaxes << :should  if Syntax.should_enabled?
        syntaxes << :expect if Syntax.expect_enabled?
        syntaxes
      end
    end

    def self.configuration
      @configuration ||= Configuration.new
    end

    configuration.syntax = [:should, :expect]
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rspec-mocks-2.99.0.beta2 lib/rspec/mocks/configuration.rb
rspec-mocks-2.99.0.beta1 lib/rspec/mocks/configuration.rb