instance method
assert_deprecated
Ruby on Rails 7.0.10
Since v7.0.10Signature
assert_deprecated(match = nil, deprecator = nil, &block)
Asserts that a matching deprecation warning was emitted by the given deprecator during the execution of the yielded block.
assert_deprecated(/foo/, CustomDeprecator) do CustomDeprecator.warn "foo should no longer be used" end
The match object may be a Regexp, or String appearing in the message.
assert_deprecated('foo', CustomDeprecator) do CustomDeprecator.warn "foo should no longer be used" end
If the match is omitted (or explicitly nil), any deprecation warning will match.
assert_deprecated(nil, CustomDeprecator) do CustomDeprecator.warn "foo should no longer be used" end
If no deprecator is given, defaults to ActiveSupport::Deprecation.
assert_deprecated do ActiveSupport::Deprecation.warn "foo should no longer be used" end
Parameters
-
matchopt = nil -
deprecatoropt = nil -
blockblock
Source
# File activesupport/lib/active_support/testing/deprecation.rb, line 31
def assert_deprecated(match = nil, deprecator = nil, &block)
result, warnings = collect_deprecations(deprecator, &block)
assert !warnings.empty?, "Expected a deprecation warning within the block but received none"
if match
match = Regexp.new(Regexp.escape(match)) unless match.is_a?(Regexp)
assert warnings.any? { |w| match.match?(w) }, "No deprecation warning matched #{match}: #{warnings.join(', ')}"
end
result
end
Defined in activesupport/lib/active_support/testing/deprecation.rb line 31
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveSupport::Testing::Deprecation