Sha256: 0fc10c987a99c011b3770be747591e1b26748bdbe174fc98eeb2a5e0a5778320

Contents?: true

Size: 1.05 KB

Versions: 85

Compression:

Stored size: 1.05 KB

Contents

module Mocha # :nodoc:

  class ExpectationList

    def initialize
      @expectations = []
    end
    
    def add(expectation)
      @expectations.unshift(expectation)
      expectation
    end
    
    def matches_method?(method_name)
      @expectations.any? { |expectation| expectation.matches_method?(method_name) }
    end
    
    def match(method_name, *arguments)
      matching_expectations(method_name, *arguments).first
    end
    
    def match_allowing_invocation(method_name, *arguments)
      matching_expectations(method_name, *arguments).detect { |e| e.invocations_allowed? }
    end
    
    def verified?(assertion_counter = nil)
      @expectations.all? { |expectation| expectation.verified?(assertion_counter) }
    end
    
    def to_a
      @expectations
    end
    
    def to_set
      @expectations.to_set
    end
    
    def length
      @expectations.length
    end
    
    private
    
    def matching_expectations(method_name, *arguments)
      @expectations.select { |e| e.match?(method_name, *arguments) }
    end
    
  end

end

Version data entries

85 entries across 85 versions & 11 rubygems

Version Path
dradis-mediawiki-4.15.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.14.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.13.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.11.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.10.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.9.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.8.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.7.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.6.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.5.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.4.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.3.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.2.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.1.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-4.0.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-3.22.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-3.21.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-3.20.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-3.19.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb
dradis-mediawiki-3.18.0 test/vendor/mocha-0.9.5/lib/mocha/expectation_list.rb