class RuboCop::Cop::Minitest::RefutePathExists


refute_path_exists(path, ‘message’)
refute_path_exists(path)
# good
refute(File.exist?(path), ‘message’)
refute(File.exist?(path))
# bad
@example
Enforces the test to use ‘refute_path_exists` instead of using `refute(File.exist?(path))`.

def build_good_method(node, path, message)

def build_good_method(node, path, message)
  args = [path.source, message&.source].compact.join(', ')
  if node.parenthesized?
    "refute_path_exists(#{args})"
  else
    "refute_path_exists #{args}"
  end
end

def on_send(node)

def on_send(node)
  refute_file_exists(node) do |path, failure_message|
    failure_message = failure_message.first
    good_method = build_good_method(node, path, failure_message)
    message = format(MSG, good_method: good_method)
    add_offense(node, message: message) do |corrector|
      corrector.replace(node.loc.selector, 'refute_path_exists')
      corrector.replace(node.first_argument, path.source)
    end
  end
end