Add RecurringDonationsExportCreateJob
This commit is contained in:
parent
016e69283c
commit
1422b5907e
3 changed files with 10 additions and 8 deletions
7
app/jobs/recurring_donations_export_create_job.rb
Normal file
7
app/jobs/recurring_donations_export_create_job.rb
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
class RecurringDonationsExportCreateJob < ApplicationJob
|
||||||
|
queue_as :default
|
||||||
|
|
||||||
|
def perform(*args)
|
||||||
|
ExportRecurringDonations.run_export(*args)
|
||||||
|
end
|
||||||
|
end
|
|
@ -20,7 +20,7 @@ module ExportRecurringDonations
|
||||||
|
|
||||||
e = Export.create(nonprofit: npo, user: user, status: :queued, export_type: 'ExportRecurringDonations', parameters: params.to_json)
|
e = Export.create(nonprofit: npo, user: user, status: :queued, export_type: 'ExportRecurringDonations', parameters: params.to_json)
|
||||||
|
|
||||||
DelayedJobHelper.enqueue_job(ExportRecurringDonations, :run_export, [npo_id, params.to_json, user_id, e.id])
|
RecurringDonationsExportCreateJob.perform_later(npo_id, params.to_json, user_id, e.id)
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.run_export(npo_id, params, user_id, export_id)
|
def self.run_export(npo_id, params, user_id, export_id)
|
||||||
|
|
|
@ -53,16 +53,11 @@ describe ExportRecurringDonations do
|
||||||
|
|
||||||
it 'creates an export object and schedules job' do
|
it 'creates an export object and schedules job' do
|
||||||
Timecop.freeze(2020, 4, 5) do
|
Timecop.freeze(2020, 4, 5) do
|
||||||
stub_const('DelayedJobHelper', double('delayed'))
|
|
||||||
params = { param1: 'pp', root_url: 'https://localhost:8080' }.with_indifferent_access
|
params = { param1: 'pp', root_url: 'https://localhost:8080' }.with_indifferent_access
|
||||||
|
|
||||||
expect(Export).to receive(:create).and_wrap_original { |m, *args|
|
expect {
|
||||||
e = m.call(*args) # get original create
|
|
||||||
expect(DelayedJobHelper).to receive(:enqueue_job).with(ExportRecurringDonations, :run_export, [@nonprofit.id, params.to_json, @user.id, e.id]) # add the enqueue
|
|
||||||
e
|
|
||||||
}
|
|
||||||
|
|
||||||
ExportRecurringDonations.initiate_export(@nonprofit.id, params, @user.id)
|
ExportRecurringDonations.initiate_export(@nonprofit.id, params, @user.id)
|
||||||
|
}.to have_enqueued_job(RecurringDonationExportCreateJob)
|
||||||
export = Export.first
|
export = Export.first
|
||||||
expected_export = { id: export.id,
|
expected_export = { id: export.id,
|
||||||
user_id: @user.id,
|
user_id: @user.id,
|
||||||
|
|
Loading…
Reference in a new issue