From 4b754b51f9007772eb52177c291dac5811dba25c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonne=20Ha=C3=9F?= Date: Sat, 20 Sep 2014 13:39:09 +0200 Subject: [PATCH] Discard dispatch jobs of already deleted records --- app/workers/deferred_dispatch.rb | 1 + spec/workers/deferred_dispatch_spec.rb | 9 +++++++++ 2 files changed, 10 insertions(+) create mode 100644 spec/workers/deferred_dispatch_spec.rb diff --git a/app/workers/deferred_dispatch.rb b/app/workers/deferred_dispatch.rb index cbb87581a..46fa894c3 100644 --- a/app/workers/deferred_dispatch.rb +++ b/app/workers/deferred_dispatch.rb @@ -17,6 +17,7 @@ module Workers end Postzord::Dispatcher.build(user, object, opts).post + rescue ActiveRecord::RecordNotFound # The target got deleted before the job was run end end end diff --git a/spec/workers/deferred_dispatch_spec.rb b/spec/workers/deferred_dispatch_spec.rb new file mode 100644 index 000000000..f0a20d768 --- /dev/null +++ b/spec/workers/deferred_dispatch_spec.rb @@ -0,0 +1,9 @@ +require 'spec_helper' + +describe Workers::DeferredDispatch do + it "handles non existing records gracefully" do + expect { + described_class.new.perform(alice.id, 'Comment', 0, {}) + }.to_not raise_error + end +end