/usr/lib/ruby/vendor_ruby/rspec/expectations/minitest_integration.rb is in ruby-rspec-expectations 3.4.0c3e0m1s1-1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | require 'rspec/expectations'
Minitest::Test.class_eval do
include ::RSpec::Matchers
def expect(*a, &b)
assert(true) # so each expectation gets counted in minitest's assertion stats
super
end
# Convert a `MultipleExpectationsNotMetError` to a `Minitest::Assertion` error so
# it gets counted in minitest's summary stats as a failure rather than an error.
# It would be nice to make `MultipleExpectationsNotMetError` subclass
# `Minitest::Assertion`, but Minitest's implementation does not treat subclasses
# the same, so this is the best we can do.
def aggregate_failures(*args, &block)
super
rescue RSpec::Expectations::MultipleExpectationsNotMetError => e
assertion_failed = Minitest::Assertion.new(e.message)
assertion_failed.set_backtrace e.backtrace
raise assertion_failed
end
end
module RSpec
module Expectations
remove_const :ExpectationNotMetError
# Exception raised when an expectation fails.
ExpectationNotMetError = ::Minitest::Assertion
end
end
|