mirror of
https://github.com/mperham/sidekiq.git
synced 2022-11-09 13:52:34 -05:00
Replaced class and instance level send
Replaced with `__send__` from std lib * `send` can now be overridden to be more semantically meaningful * `message.send(user_id)` as opposed to `message.send_message(user_id)` * `__send__` makes it clear that the reflective version is intended
This commit is contained in:
parent
0a279e8fca
commit
e12bf878fa
11 changed files with 27 additions and 27 deletions
|
@ -28,10 +28,10 @@ module Sidekiq
|
|||
|
||||
def self.included(klass)
|
||||
if $TESTING
|
||||
klass.send(:include, InstanceMethods)
|
||||
klass.send(:extend, ClassMethods)
|
||||
klass.__send__(:include, InstanceMethods)
|
||||
klass.__send__(:extend, ClassMethods)
|
||||
else
|
||||
klass.send(:include, Celluloid)
|
||||
klass.__send__(:include, Celluloid)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -203,7 +203,7 @@ module Sidekiq
|
|||
end
|
||||
|
||||
def [](name)
|
||||
@item.send(:[], name)
|
||||
@item.__send__(:[], name)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ module Sidekiq
|
|||
|
||||
def perform(yml)
|
||||
(target, method_name, args) = YAML.load(yml)
|
||||
msg = target.send(method_name, *args)
|
||||
msg = target.__send__(method_name, *args)
|
||||
# The email method can return nil, which causes ActionMailer to return
|
||||
# an undeliverable empty message.
|
||||
msg.deliver if msg && (msg.to || msg.cc || msg.bcc) && msg.from
|
||||
|
|
|
@ -16,7 +16,7 @@ module Sidekiq
|
|||
|
||||
def perform(yml)
|
||||
(target, method_name, args) = YAML.load(yml)
|
||||
target.send(method_name, *args)
|
||||
target.__send__(method_name, *args)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ module Sidekiq
|
|||
|
||||
def perform(yml)
|
||||
(target, method_name, args) = YAML.load(yml)
|
||||
target.send(method_name, *args)
|
||||
target.__send__(method_name, *args)
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -36,4 +36,4 @@ module Sidekiq
|
|||
end
|
||||
end
|
||||
|
||||
Module.send(:include, Sidekiq::Extensions::Klass)
|
||||
Module.__send__(:include, Sidekiq::Extensions::Klass)
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
module Sidekiq
|
||||
def self.hook_rails!
|
||||
if defined?(::ActiveRecord)
|
||||
::ActiveRecord::Base.send(:include, Sidekiq::Extensions::ActiveRecord)
|
||||
::ActiveRecord::Base.__send__(:include, Sidekiq::Extensions::ActiveRecord)
|
||||
end
|
||||
|
||||
if defined?(::ActionMailer)
|
||||
|
|
|
@ -294,8 +294,8 @@ class TestCli < Sidekiq::Test
|
|||
describe 'when weight is present' do
|
||||
it 'concatenates queues by factor of weight and sets strict to false' do
|
||||
opts = { strict: true }
|
||||
@cli.send :parse_queues, opts, [['often', 7], ['repeatedly', 3]]
|
||||
@cli.send :parse_queues, opts, [['once']]
|
||||
@cli.__send__ :parse_queues, opts, [['often', 7], ['repeatedly', 3]]
|
||||
@cli.__send__ :parse_queues, opts, [['once']]
|
||||
assert_equal (%w[often] * 7 + %w[repeatedly] * 3 + %w[once]), opts[:queues]
|
||||
assert !opts[:strict]
|
||||
end
|
||||
|
@ -304,8 +304,8 @@ class TestCli < Sidekiq::Test
|
|||
describe 'when weight is not present' do
|
||||
it 'returns queues and sets strict' do
|
||||
opts = { strict: true }
|
||||
@cli.send :parse_queues, opts, [['once'], ['one_time']]
|
||||
@cli.send :parse_queues, opts, [['einmal']]
|
||||
@cli.__send__ :parse_queues, opts, [['once'], ['one_time']]
|
||||
@cli.__send__ :parse_queues, opts, [['einmal']]
|
||||
assert_equal %w[once one_time einmal], opts[:queues]
|
||||
assert opts[:strict]
|
||||
end
|
||||
|
@ -316,7 +316,7 @@ class TestCli < Sidekiq::Test
|
|||
describe 'when weight is present' do
|
||||
it 'concatenates queue to opts[:queues] weight number of times and sets strict to false' do
|
||||
opts = { strict: true }
|
||||
@cli.send :parse_queue, opts, 'often', 7
|
||||
@cli.__send__ :parse_queue, opts, 'often', 7
|
||||
assert_equal %w[often] * 7, opts[:queues]
|
||||
assert !opts[:strict]
|
||||
end
|
||||
|
@ -325,7 +325,7 @@ class TestCli < Sidekiq::Test
|
|||
describe 'when weight is not present' do
|
||||
it 'concatenates queue to opts[:queues] once and leaves strict true' do
|
||||
opts = { strict: true }
|
||||
@cli.send :parse_queue, opts, 'once', nil
|
||||
@cli.__send__ :parse_queue, opts, 'once', nil
|
||||
assert_equal %w[once], opts[:queues]
|
||||
assert opts[:strict]
|
||||
end
|
||||
|
|
|
@ -226,11 +226,11 @@ class TestClient < Sidekiq::Test
|
|||
|
||||
describe 'item normalization' do
|
||||
it 'defaults retry to true' do
|
||||
assert_equal true, Sidekiq::Client.new.send(:normalize_item, 'class' => QueuedWorker, 'args' => [])['retry']
|
||||
assert_equal true, Sidekiq::Client.new.__send__(:normalize_item, 'class' => QueuedWorker, 'args' => [])['retry']
|
||||
end
|
||||
|
||||
it "does not normalize numeric retry's" do
|
||||
assert_equal 2, Sidekiq::Client.new.send(:normalize_item, 'class' => CWorker, 'args' => [])['retry']
|
||||
assert_equal 2, Sidekiq::Client.new.__send__(:normalize_item, 'class' => CWorker, 'args' => [])['retry']
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -59,7 +59,7 @@ class TestExceptionHandler < Sidekiq::Test
|
|||
end
|
||||
|
||||
after do
|
||||
Object.send(:remove_const, "Airbrake") # HACK should probably inject Airbrake etc into this class in the future
|
||||
Object.__send__(:remove_const, "Airbrake") # HACK should probably inject Airbrake etc into this class in the future
|
||||
end
|
||||
|
||||
it "notifies Airbrake" do
|
||||
|
@ -75,7 +75,7 @@ class TestExceptionHandler < Sidekiq::Test
|
|||
end
|
||||
|
||||
after do
|
||||
Object.send(:remove_const, "Honeybadger") # HACK should probably inject Honeybadger etc into this class in the future
|
||||
Object.__send__(:remove_const, "Honeybadger") # HACK should probably inject Honeybadger etc into this class in the future
|
||||
end
|
||||
|
||||
it "notifies Honeybadger" do
|
||||
|
@ -91,7 +91,7 @@ class TestExceptionHandler < Sidekiq::Test
|
|||
end
|
||||
|
||||
after do
|
||||
Object.send(:remove_const, "ExceptionNotifier")
|
||||
Object.__send__(:remove_const, "ExceptionNotifier")
|
||||
end
|
||||
|
||||
it "notifies ExceptionNotifier" do
|
||||
|
@ -120,7 +120,7 @@ class TestExceptionHandler < Sidekiq::Test
|
|||
end
|
||||
|
||||
after do
|
||||
Object.send(:remove_const, "Exceptional")
|
||||
Object.__send__(:remove_const, "Exceptional")
|
||||
end
|
||||
|
||||
it "notifies Exceptional" do
|
||||
|
|
|
@ -77,7 +77,7 @@ class TestRedisConnection < Sidekiq::Test
|
|||
ENV[v] = nil
|
||||
end
|
||||
ENV[var] = uri
|
||||
assert_equal uri, Sidekiq::RedisConnection.send(:determine_redis_provider)
|
||||
assert_equal uri, Sidekiq::RedisConnection.__send__(:determine_redis_provider)
|
||||
ENV[var] = nil
|
||||
end
|
||||
|
||||
|
|
|
@ -210,7 +210,7 @@ class TestRetry < Sidekiq::Test
|
|||
end
|
||||
|
||||
it 'calls worker.retries_exhausted after too many retries' do
|
||||
assert_equal [1,2, "foo", "retried_method"], handler.send(:retries_exhausted, worker.new, msg)
|
||||
assert_equal [1,2, "foo", "retried_method"], handler.__send__(:retries_exhausted, worker.new, msg)
|
||||
end
|
||||
end
|
||||
|
||||
|
@ -226,7 +226,7 @@ class TestRetry < Sidekiq::Test
|
|||
end
|
||||
|
||||
it 'calls worker sidekiq_retries_exhausted_block after too many retries' do
|
||||
new_msg = handler.send(:retries_exhausted, worker.new, msg)
|
||||
new_msg = handler.__send__(:retries_exhausted, worker.new, msg)
|
||||
expected_msg = msg.merge('called_by_callback' => true)
|
||||
|
||||
assert_equal expected_msg, new_msg, "sidekiq_retries_exhausted block not called"
|
||||
|
@ -288,15 +288,15 @@ class TestRetry < Sidekiq::Test
|
|||
let(:handler) { Sidekiq::Middleware::Server::RetryJobs.new }
|
||||
|
||||
it "retries with a default delay" do
|
||||
refute_equal 4, handler.send(:delay_for, worker, 2)
|
||||
refute_equal 4, handler.__send__(:delay_for, worker, 2)
|
||||
end
|
||||
|
||||
it "retries with a custom delay" do
|
||||
assert_equal 4, handler.send(:delay_for, custom_worker, 2)
|
||||
assert_equal 4, handler.__send__(:delay_for, custom_worker, 2)
|
||||
end
|
||||
|
||||
it "falls back to the default retry on exception" do
|
||||
refute_equal 4, handler.send(:delay_for, error_worker, 2)
|
||||
refute_equal 4, handler.__send__(:delay_for, error_worker, 2)
|
||||
assert_match(/Failure scheduling retry using the defined `sidekiq_retry_in`/,
|
||||
File.read(@tmp_log_path), 'Log entry missing for sidekiq_retry_in')
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue