Sha256: f133d86dc394a581e16ac22dd2e74f441433bf715a404a4a69426fcca8d2ddb0

Contents?: true

Size: 739 Bytes

Versions: 4

Compression:

Stored size: 739 Bytes

Contents

require 'mocha/expectation'

module Mocha # :nodoc:
  
  class MissingExpectation < Expectation # :nodoc:

    def initialize(mock, method_name)
      super
      @invoked_count = true
    end

    def verify
      msg = error_message(0, 1)
      similar_expectations_list = similar_expectations.collect { |expectation| expectation.method_signature }.join("\n")
      msg << "\nSimilar expectations:\n#{similar_expectations_list}" unless similar_expectations.empty?
      error = ExpectationError.new(msg)
      error.set_backtrace(filtered_backtrace)
      raise error if @invoked_count
    end

    def similar_expectations
      @mock.expectations.select { |expectation| expectation.method_name == self.method_name }
    end

  end

end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
mocha-0.5.0 lib/mocha/missing_expectation.rb
mocha-0.5.1 lib/mocha/missing_expectation.rb
puppet-0.24.0 test/lib/mocha/missing_expectation.rb
puppet-0.24.1 test/lib/mocha/missing_expectation.rb