Class: RuboCop::Cop::Minitest::AssertWithExpectedArgument
- Inherits:
-
Base
- Object
- Base
- RuboCop::Cop::Minitest::AssertWithExpectedArgument
- Defined in:
- lib/rubocop/cop/minitest/assert_with_expected_argument.rb
Overview
Tries to detect when a user accidentally used ‘assert` when they meant to use `assert_equal`.
NOTE: The second argument to the ‘assert` method named `message` and `msg` is allowed.
Because their names are inferred as message arguments.
Constant Summary collapse
- MSG =
'Did you mean to use `assert_equal(%<arguments>s)`?'
- RESTRICT_ON_SEND =
%i[assert].freeze
- MESSAGE_VARIABLES =
%w[message msg].freeze
Instance Method Summary collapse
Instance Method Details
#on_send(node) ⇒ Object
37 38 39 40 41 42 43 44 |
# File 'lib/rubocop/cop/minitest/assert_with_expected_argument.rb', line 37 def on_send(node) assert_with_two_arguments?(node) do |_expected, | return if .str_type? || .dstr_type? || MESSAGE_VARIABLES.include?(.source) arguments = node.arguments.map(&:source).join(', ') add_offense(node, message: format(MSG, arguments: arguments)) end end |