Sha256: 40f50ba6d87cc7ef8fcb371f96d7198affc4af676c57a218e6a4fa5c18ea3786

Contents?: true

Size: 1.56 KB

Versions: 22

Compression:

Stored size: 1.56 KB

Contents

module RR
  module DoubleDefinitions
    module Strategies
      module Verification
        # This method sets the Double to have a mock strategy. A mock strategy
        # sets the default state of the Double to expect the method call
        # with arguments exactly one time. The Double's expectations can be
        # changed.
        #
        # This method can be chained with proxy.
        #   mock.proxy(subject).method_name_1
        #   or
        #   proxy.mock(subject).method_name_1
        #
        # When passed the subject, a DoubleDefinitionCreateBlankSlate is returned. Passing
        # a method with arguments to the proxy will set up expectations that
        # the a call to the subject's method with the arguments will happen,
        # and return the prescribed value.
        #   mock(subject).method_name_1 {return_value_1}
        #   mock(subject).method_name_2(arg1, arg2) {return_value_2}
        #
        # When passed the subject and the method_name, this method returns
        # a mock Double with the method already set.
        #
        #   mock(subject, :method_name_1) {return_value_1}
        #   mock(subject, :method_name_2).with(arg1, arg2) {return_value_2}
        #
        # mock also takes a block for definitions.
        #   mock(subject) do
        #     method_name_1 {return_value_1}
        #     method_name_2(arg_1, arg_2) {return_value_2}
        #   end        
        class Mock < VerificationStrategy
          protected
          def do_call
            definition.with(*args).once
          end
        end
      end
    end
  end
end

Version data entries

22 entries across 18 versions & 5 rubygems

Version Path
bitclust-core-0.5.3 vendor/bundle/ruby/1.9.1/gems/bitclust-core-0.5.3/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/verification/mock.rb
bitclust-core-0.5.3 vendor/bundle/ruby/1.9.1/gems/bitclust-core-0.5.3/vendor/bundle/ruby/1.9.1/gems/bitclust-core-0.5.1/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/verification/mock.rb
bitclust-core-0.5.3 vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/verification/mock.rb
bitclust-core-0.5.3 vendor/bundle/ruby/1.9.1/gems/bitclust-core-0.5.1/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/verification/mock.rb
bitclust-core-0.5.2 vendor/bundle/ruby/1.9.1/gems/bitclust-core-0.5.1/vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/verification/mock.rb
bitclust-core-0.5.2 vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/verification/mock.rb
bitclust-core-0.5.1 vendor/bundle/ruby/1.9.1/gems/rr-1.0.4/lib/rr/double_definitions/strategies/verification/mock.rb
mcmire-rr-1.0.5.rc1 lib/rr/double_definitions/strategies/verification/mock.rb
messagebus_ruby_api-0.4.7 spec/ruby/1.9.1/gems/rr-1.0.2/lib/rr/double_definitions/strategies/verification/mock.rb
messagebus_ruby_api-0.4.4 spec/ruby/1.9.1/gems/rr-1.0.2/lib/rr/double_definitions/strategies/verification/mock.rb
rr-1.0.4 lib/rr/double_definitions/strategies/verification/mock.rb
rr-1.0.3 lib/rr/double_definitions/strategies/verification/mock.rb
vim-jar-0.1.2.0001 bundler/ruby/1.8/gems/rr-1.0.2/lib/rr/double_definitions/strategies/verification/mock.rb
vim-jar-0.1.2 bundler/ruby/1.8/gems/rr-1.0.2/lib/rr/double_definitions/strategies/verification/mock.rb
vim-jar-0.1.1 bundler/ruby/1.8/gems/rr-1.0.2/lib/rr/double_definitions/strategies/verification/mock.rb
vim-jar-0.1.0 bundler/ruby/1.8/gems/rr-1.0.2/lib/rr/double_definitions/strategies/verification/mock.rb
vim-jar-0.0.3 bundler/ruby/1.8/gems/rr-1.0.2/lib/rr/double_definitions/strategies/verification/mock.rb
vim-jar-0.0.2 bundler/ruby/1.8/gems/rr-1.0.2/lib/rr/double_definitions/strategies/verification/mock.rb
vim-jar-0.0.1 bundler/ruby/1.8/gems/rr-1.0.2/lib/rr/double_definitions/strategies/verification/mock.rb
rr-1.0.2 lib/rr/double_definitions/strategies/verification/mock.rb