31 lines
785 B
Ruby
31 lines
785 B
Ruby
require "rails_helper"
|
|
|
|
RSpec.describe RateLimitCheckerWorker, type: :worker do
|
|
describe "#perform_async" do
|
|
it "enqueues a job correctly" do
|
|
sidekiq_assert_enqueued_with(job: described_class, args: [1, "test"], queue: "default") do
|
|
described_class.perform_async(1, "test")
|
|
end
|
|
end
|
|
end
|
|
|
|
describe "#perform" do
|
|
let(:user) { create(:user) }
|
|
let(:service) { PingAdmins }
|
|
let(:worker) { subject }
|
|
|
|
before { allow(service).to receive(:call) }
|
|
|
|
it "calls a service" do
|
|
worker.perform(user.id, "test")
|
|
|
|
expect(service).to have_received(:call).with(user, "test").once
|
|
end
|
|
|
|
it "does nothing for non-existent user" do
|
|
worker.perform(nil, "test")
|
|
|
|
expect(service).not_to have_received(:call)
|
|
end
|
|
end
|
|
end
|