class RuboCop::Cop::Vendor::RollbarLog

This cop checks for `Rollbar.log` usage and suggests specialized method calls instead.

The main reason for this suggestion is consistency.

@example

# bad
Rollbar.log('info', 'Stale message')

# good
Rollbar.info('Stale message')

Constants

MSG

Public Instance Methods

autocorrect(node) click to toggle source
# File lib/rubocop/cop/vendor/rollbar_log.rb, line 36
def autocorrect(node)
  range = offending_range(node)
  replacement = "#{node.children[2].value}#{range.source.include?('(') ? '(' : ' '}"
  lambda do |corrector|
    corrector.replace(range, replacement)
  end
end
on_send(node) click to toggle source
# File lib/rubocop/cop/vendor/rollbar_log.rb, line 30
def on_send(node)
  return unless bad_method?(node)

  add_offense(node, location: offending_range(node))
end

Private Instance Methods

message(node) click to toggle source
# File lib/rubocop/cop/vendor/rollbar_log.rb, line 53
def message(node)
  format(MSG, method: node.children[2].value)
end
offending_range(node) click to toggle source
# File lib/rubocop/cop/vendor/rollbar_log.rb, line 46
def offending_range(node)
  range_between(
    node.children[0].loc.last_column + 1,
    node.children[3].loc.column
  )
end