docbrown/spec/workers/pages/bust_cache_worker_spec.rb
Edward Tam cb98b3b510 pages bust cache job sidekiq refactor (#5338) [deploy]
* Refactored Pages::BustCacheJob to Pages::BustCacheWorker
* Removed Pages::BustCacheJob and specs
Co-authored-by: Edward Tam <edward6882990@gmail.com>
2020-01-02 15:16:09 -05:00

32 lines
978 B
Ruby

require "rails_helper"
class NewPageBuster
def self.bust_page(*); end
end
RSpec.describe Pages::BustCacheWorker, type: :worker do
include_examples "#enqueues_on_correct_queue", "high_priority", 1
describe "#perform" do
let(:worker) { subject }
let(:page_slug) { "test123" }
it "with empty slug does not call the cache buster" do
allow(CacheBuster).to receive(:bust_page)
worker.perform("")
expect(CacheBuster).not_to have_received(:bust_page)
end
it "with cache buster defined busts cache with defined buster" do
allow(NewPageBuster).to receive(:bust_page)
worker.perform(page_slug, "NewPageBuster")
expect(NewPageBuster).to have_received(:bust_page).with(page_slug)
end
it "without cache buster defined busts cache with default" do
allow(CacheBuster).to receive(:bust_page)
worker.perform(page_slug)
expect(CacheBuster).to have_received(:bust_page).with(page_slug)
end
end
end