Related to: #5305 In order to move all the jobs to Sidekiq, this commit creates a new Articles/BustMultipleCachesWorker using Sidekiq based on the Articles/BustMultipleCachesJob (this one is not removed until we know that any job on this one will be performed).
28 lines
1 KiB
Ruby
28 lines
1 KiB
Ruby
require "rails_helper"
|
|
|
|
RSpec.describe Article, type: :model do
|
|
context "when no organization" do
|
|
let(:article) { create(:article) }
|
|
|
|
before { create(:reaction, reactable: article) }
|
|
|
|
it "doesn't create ScoreCalcJob on destroy" do
|
|
expect { article.destroy }.not_to have_enqueued_job(Articles::ScoreCalcJob)
|
|
end
|
|
end
|
|
|
|
context "with organization" do
|
|
let(:user) { create(:user) }
|
|
let(:organization) { create(:organization) }
|
|
let!(:article) { create(:article, organization: organization, user: user) }
|
|
let!(:org_article) { create(:article, organization: organization) }
|
|
let!(:user_article) { create(:article, user: user) }
|
|
let!(:org_user_article) { create(:article, user: user, organization: organization) }
|
|
|
|
it "queues BustCacheJob with user and organization article_ids" do
|
|
sidekiq_assert_enqueued_with(job: Articles::BustMultipleCachesWorker, args: [[user_article.id, org_user_article.id, org_article.id].sort]) do
|
|
article.destroy
|
|
end
|
|
end
|
|
end
|
|
end
|