Sha256: fa4f8bf10540f340563340631a520b86188c1acb0fcfb46dce99d94991c6974d

Contents?: true

Size: 1001 Bytes

Versions: 50

Compression:

Stored size: 1001 Bytes

Contents

module Mocha
  
  module ParameterMatchers

    # :call-seq: any_of -> parameter_matcher
    #
    # Matches if any +matchers+ match.
    #   object = mock()
    #   object.expects(:method_1).with(any_of(1, 3))
    #   object.method_1(1)
    #   # no error raised
    #
    #   object = mock()
    #   object.expects(:method_1).with(any_of(1, 3))
    #   object.method_1(3)
    #   # no error raised
    #
    #   object = mock()
    #   object.expects(:method_1).with(any_of(1, 3))
    #   object.method_1(2)
    #   # error raised, because method_1 was not called with 1 or 3
    def any_of(*matchers)
      AnyOf.new(*matchers)
    end
    
    class AnyOf # :nodoc:
      
      def initialize(*matchers)
        @matchers = matchers
      end
    
      def ==(parameter)
        @matchers.any? { |matcher| matcher == parameter }
      end
      
      def mocha_inspect
        "any_of(#{@matchers.map { |matcher| matcher.mocha_inspect }.join(", ") })"
      end
      
    end
    
  end
  
end

Version data entries

50 entries across 50 versions & 4 rubygems

Version Path
redcar-dev-0.12.1dev-java lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-dev-0.12.0dev-java lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.11 lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.11.0dev lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.10 lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.9.2 lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.9.1 lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.9.0 lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.8.1 lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.8 lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.7 lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.6.1 lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.6 lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.6.1dev lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.5.1 lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.5 lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.5.6dev lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.5.5dev lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.5.4dev lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb
redcar-0.5.3dev lib/openssl/mocha/lib/mocha/parameter_matchers/any_of.rb