* Refactored Pages::BustCacheJob to Pages::BustCacheWorker * Removed Pages::BustCacheJob and specs Co-authored-by: Edward Tam <edward6882990@gmail.com>
32 lines
978 B
Ruby
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
|