2021-03-11 19:13:27 +05:30
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2020-05-24 23:13:21 +05:30
|
|
|
module RuboCop
|
|
|
|
module Cop
|
|
|
|
# Cop that blacklists keyword arguments usage in Sidekiq workers
|
|
|
|
class AvoidKeywordArgumentsInSidekiqWorkers < RuboCop::Cop::Cop
|
|
|
|
MSG = "Do not use keyword arguments in Sidekiq workers. " \
|
2021-04-29 21:17:54 +05:30
|
|
|
"For details, check https://github.com/mperham/sidekiq/issues/2372"
|
2020-05-24 23:13:21 +05:30
|
|
|
OBSERVED_METHOD = :perform
|
|
|
|
|
|
|
|
def on_def(node)
|
|
|
|
return if node.method_name != OBSERVED_METHOD
|
|
|
|
|
|
|
|
node.arguments.each do |argument|
|
|
|
|
if argument.type == :kwarg || argument.type == :kwoptarg
|
|
|
|
add_offense(node, location: :expression)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|