Do not raise an error if PrecomputeFeed could not find any status (#4015)

master
Akihiko Odaki (@fn_aki@pawoo.net) 8 years ago committed by Eugen Rochko
parent 1273fbf86e
commit 7362469d89
  1. 2
      app/services/precompute_feed_service.rb
  2. 5
      spec/services/precompute_feed_service_spec.rb

@ -16,7 +16,7 @@ class PrecomputeFeedService < BaseService
pairs = statuses.reverse_each.map(&method(:process_status)) pairs = statuses.reverse_each.map(&method(:process_status))
redis.pipelined do redis.pipelined do
redis.zadd(account_home_key, pairs) redis.zadd(account_home_key, pairs) if pairs.any?
redis.del("account:#{@account.id}:regeneration") redis.del("account:#{@account.id}:regeneration")
end end
end end

@ -18,5 +18,10 @@ RSpec.describe PrecomputeFeedService do
expect(Redis.current.zscore(FeedManager.instance.key(:home, account.id), reblog.id)).to eq status.id expect(Redis.current.zscore(FeedManager.instance.key(:home, account.id), reblog.id)).to eq status.id
end end
it 'does not raise an error even if it could not find any status' do
account = Fabricate(:account)
subject.call(account)
end
end end
end end

Loading…
Cancel
Save