pronto-rubocop icon indicating copy to clipboard operation
pronto-rubocop copied to clipboard

Method cops not found when changing the method

Open alexkuebo opened this issue 6 years ago • 1 comments

We've got a simple method:

  def update
    user = User.authorized.find(params[:id])
    check_auth :edit_user, user
    update_from_params! user
    respond_with_ok
  end

After changing or adding some lines:

  def update
    user = User.authorized.find(params[:id])
    check_auth :edit_user, user
    update_from_params! user
    update_from_params! user
    update_from_params! user
    update_from_params! user
    update_from_params! user
    update_from_params! user
    update_from_params! user
    update_from_params! user
    update_from_params! user
    respond_with_ok
  end

There is a rubocop warning like "AbcSize" or "MethodLength":

app/controllers/users_controller.rb:37:3: C: Metrics/AbcSize: Assignment Branch Condition size for update is too high. [15.03/15]
  def update ...
  ^^^^^^^^^^
app/controllers/users_controller.rb:37:3: C: Metrics/MethodLength: Method has too many lines. [12/10]
  def update ...
  ^^^^^^^^^^

Because the issues are in the line where the method is defined and this line wasn't changed, the issue is not reported by pronto.

alexkuebo avatar Jan 29 '20 08:01 alexkuebo

That's a bit tricky, as it's not part of the diff. Not sure there's an easy way to detect this without parsing the file itself, though 🤔

ashkulz avatar Jan 31 '21 09:01 ashkulz