Sha256: b8fb5ea723303fb32c0b88358978d1e9a77a1729cf439262cc9667cb765fee43

Contents?: true

Size: 1.44 KB

Versions: 29

Compression:

Stored size: 1.44 KB

Contents

require 'mocha/backtrace_filter'
require 'mocha/expectation_error'

module Mocha
  # This factory determines what class of exception should be raised when Mocha detects a test failure.
  #
  # This class should only be used by authors of test libraries and not by typical "users" of Mocha.
  #
  # For example, it is used by +Mocha::Integration::MiniTest::Adapter+ in order to have Mocha raise a +MiniTest::Assertion+ which can then be sensibly handled by +MiniTest::Unit::TestCase+.
  #
  # @see Mocha::Integration::MiniTest::Adapter
  class ExpectationErrorFactory
    class << self
      # @!attribute exception_class
      #   Determines what class of exception should be raised when Mocha detects a test failure.
      #
      #   This attribute may be set by authors of test libraries in order to have Mocha raise exceptions of a specific class when there is an unexpected invocation or an unsatisfied expectation.
      #
      #   By default a +Mocha::ExpectationError+ will be raised.
      #
      #   @return [Exception] class of exception to be raised when an expectation error occurs
      #   @see Mocha::ExpectationError
      attr_accessor :exception_class

      # @private
      def build(message = nil, backtrace = [])
        exception = exception_class.new(message)
        filter = BacktraceFilter.new
        exception.set_backtrace(filter.filtered(backtrace))
        exception
      end
    end
    self.exception_class = ExpectationError
  end
end

Version data entries

29 entries across 29 versions & 3 rubygems

Version Path
mocha-2.1.0 lib/mocha/expectation_error_factory.rb
mocha-2.0.4 lib/mocha/expectation_error_factory.rb
mocha-2.0.3 lib/mocha/expectation_error_factory.rb
fluent-plugin-google-cloud-logging-on-prem-0.1.0 vendor/ruby/3.1.0/gems/mocha-2.0.2/lib/mocha/expectation_error_factory.rb
mocha-2.0.2 lib/mocha/expectation_error_factory.rb
mocha-1.16.1 lib/mocha/expectation_error_factory.rb
mocha-1.15.1 lib/mocha/expectation_error_factory.rb
mocha-2.0.1 lib/mocha/expectation_error_factory.rb
mocha-2.0.0 lib/mocha/expectation_error_factory.rb
mocha-1.16.0 lib/mocha/expectation_error_factory.rb
mocha-2.0.0.alpha.1 lib/mocha/expectation_error_factory.rb
mocha-2.0.0.alpha lib/mocha/expectation_error_factory.rb
mocha-1.15.0 lib/mocha/expectation_error_factory.rb
mocha-1.14.0 lib/mocha/expectation_error_factory.rb
mocha-1.13.0 lib/mocha/expectation_error_factory.rb
mocha-1.12.0 lib/mocha/expectation_error_factory.rb
mocha-1.11.2 lib/mocha/expectation_error_factory.rb
mocha-1.11.1 lib/mocha/expectation_error_factory.rb
mocha-1.11.0 lib/mocha/expectation_error_factory.rb
mocha-1.10.2 lib/mocha/expectation_error_factory.rb