docbrown/spec/models/article_destroy_spec.rb
Cadu Ribeiro 93514e73df Migrate Articles/BustMultipleCachesJob to Sidekiq (#5309) [deploy]
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).
2020-01-06 13:42:34 -05:00

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