From ae30007fedd38bf5553cd799e356d21ec7e9074f Mon Sep 17 00:00:00 2001 From: Rob Harrington Date: Wed, 16 Sep 2015 16:11:06 +1000 Subject: [PATCH] Redesignating all references to user_invoices as account_invoices --- ...ccounts_and_billing_settings_controller.rb | 8 ++++---- ...voices.rb => finalize_account_invoices.rb} | 12 +++++------ app/jobs/update_user_invoices.rb | 6 +++--- .../edit.html.haml | 16 +++++++-------- config/schedule.rb | 4 ++-- lib/tasks/billing.rake | 8 ++++---- ...ts_and_billing_settings_controller_spec.rb | 20 +++++++++---------- .../accounts_and_billing_settings_spec.rb | 4 ++-- spec/jobs/finalize_user_invoices_spec.rb | 10 +++++----- spec/jobs/update_user_invoices_spec.rb | 8 ++++---- 10 files changed, 48 insertions(+), 48 deletions(-) rename app/jobs/{finalize_user_invoices.rb => finalize_account_invoices.rb} (91%) diff --git a/app/controllers/admin/accounts_and_billing_settings_controller.rb b/app/controllers/admin/accounts_and_billing_settings_controller.rb index e6a0a16e86..0f3b986cef 100644 --- a/app/controllers/admin/accounts_and_billing_settings_controller.rb +++ b/app/controllers/admin/accounts_and_billing_settings_controller.rb @@ -14,7 +14,7 @@ class Admin::AccountsAndBillingSettingsController < Spree::Admin::BaseController end def start_job - if @update_user_invoices_job || @finalize_user_invoices_job + if @update_account_invoices_job || @finalize_account_invoices_job flash[:error] = "A task is already running, please wait until it has finished" else new_job = "#{params[:job][:name]}".camelize.constantize.new @@ -43,7 +43,7 @@ class Admin::AccountsAndBillingSettingsController < Spree::Admin::BaseController end def known_jobs - ['update_user_invoices', 'finalize_user_invoices'] + ['update_account_invoices', 'finalize_account_invoices'] end def require_known_job @@ -68,7 +68,7 @@ class Admin::AccountsAndBillingSettingsController < Spree::Admin::BaseController end def load_jobs - @update_user_invoices_job = Delayed::Job.where("handler LIKE (?)", "%UpdateUserInvoices%").last - @finalize_user_invoices_job = Delayed::Job.where("handler LIKE (?)", "%FinalizeUserInvoices%").last + @update_account_invoices_job = Delayed::Job.where("handler LIKE (?)", "%UpdateAccountInvoices%").last + @finalize_account_invoices_job = Delayed::Job.where("handler LIKE (?)", "%FinalizeAccountInvoices%").last end end diff --git a/app/jobs/finalize_user_invoices.rb b/app/jobs/finalize_account_invoices.rb similarity index 91% rename from app/jobs/finalize_user_invoices.rb rename to app/jobs/finalize_account_invoices.rb index c138d1b94d..597e2994a3 100644 --- a/app/jobs/finalize_user_invoices.rb +++ b/app/jobs/finalize_account_invoices.rb @@ -1,4 +1,4 @@ -class FinalizeUserInvoices +class FinalizeAccountInvoices attr_reader :start_date, :end_date def initialize(year = nil, month = nil) @@ -11,7 +11,7 @@ class FinalizeUserInvoices def before(job) UpdateBillablePeriods.new(year, month).perform - UpdateUserInvoices.new(year, month).perform + UpdateAccountInvoices.new(year, month).perform end def perform @@ -40,7 +40,7 @@ class FinalizeUserInvoices def settings_are_valid? unless end_date <= Time.now Bugsnag.notify(RuntimeError.new("InvalidJobSettings"), { - job: "FinalizeUserInvoices", + job: "FinalizeAccountInvoices", error: "end_date is in the future", data: { end_date: end_date.localtime.strftime("%F %T"), @@ -52,7 +52,7 @@ class FinalizeUserInvoices unless @accounts_distributor = Enterprise.find_by_id(Spree::Config.accounts_distributor_id) Bugsnag.notify(RuntimeError.new("InvalidJobSettings"), { - job: "FinalizeUserInvoices", + job: "FinalizeAccountInvoices", error: "accounts_distributor_id is invalid", data: { accounts_distributor_id: Spree::Config.accounts_distributor_id @@ -63,7 +63,7 @@ class FinalizeUserInvoices unless @accounts_distributor.payment_methods.find_by_id(Spree::Config.default_accounts_payment_method_id) Bugsnag.notify(RuntimeError.new("InvalidJobSettings"), { - job: "FinalizeUserInvoices", + job: "FinalizeAccountInvoices", error: "default_accounts_payment_method_id is invalid", data: { default_accounts_payment_method_id: Spree::Config.default_accounts_payment_method_id @@ -74,7 +74,7 @@ class FinalizeUserInvoices unless @accounts_distributor.shipping_methods.find_by_id(Spree::Config.default_accounts_shipping_method_id) Bugsnag.notify(RuntimeError.new("InvalidJobSettings"), { - job: "FinalizeUserInvoices", + job: "FinalizeAccountInvoices", error: "default_accounts_shipping_method_id is invalid", data: { default_accounts_shipping_method_id: Spree::Config.default_accounts_shipping_method_id diff --git a/app/jobs/update_user_invoices.rb b/app/jobs/update_user_invoices.rb index 86b73eb0e2..9ac8c4cccf 100644 --- a/app/jobs/update_user_invoices.rb +++ b/app/jobs/update_user_invoices.rb @@ -1,4 +1,4 @@ -class UpdateUserInvoices +class UpdateAccountInvoices attr_reader :start_date, :end_date def initialize(year = nil, month = nil) @@ -82,7 +82,7 @@ class UpdateUserInvoices def settings_are_valid? unless end_date <= Time.now Bugsnag.notify(RuntimeError.new("InvalidJobSettings"), { - job: "UpdateUserInvoices", + job: "UpdateAccountInvoices", error: "end_date is in the future", data: { end_date: end_date.localtime.strftime("%F %T"), @@ -94,7 +94,7 @@ class UpdateUserInvoices unless Enterprise.find_by_id(Spree::Config.accounts_distributor_id) Bugsnag.notify(RuntimeError.new("InvalidJobSettings"), { - job: "UpdateUserInvoices", + job: "UpdateAccountInvoices", error: "accounts_distributor_id is invalid", data: { accounts_distributor_id: Spree::Config.accounts_distributor_id diff --git a/app/views/admin/accounts_and_billing_settings/edit.html.haml b/app/views/admin/accounts_and_billing_settings/edit.html.haml index 040415cbb7..d13c81dbed 100644 --- a/app/views/admin/accounts_and_billing_settings/edit.html.haml +++ b/app/views/admin/accounts_and_billing_settings/edit.html.haml @@ -43,14 +43,14 @@ .six.columns.alpha.step.text-center .form-buttons{"data-hook" => "buttons"} =link_to_with_icon "icon-undo", "Update User Invoices", - main_app.start_job_admin_accounts_and_billing_settings_path(job: { name: "update_user_invoices" }), + main_app.start_job_admin_accounts_and_billing_settings_path(job: { name: "update_account_invoices" }), class: "button fullwidth" %br - - if @update_user_invoices_job + - if @update_account_invoices_job %p.text-center - - if @update_user_invoices_job.run_at < Time.now + - if @update_account_invoices_job.run_at < Time.now %strong In Progress %br Started at: @@ -58,7 +58,7 @@ %strong Queued %br Scheduled for: - = @update_user_invoices_job.run_at + = @update_account_invoices_job.run_at - else %p.explanation Use this button to immediately update invoices for the month to date for each enterprise user in the system. This task can be set up to run automatically every night. @@ -67,14 +67,14 @@ .six.columns.omega.step.text-center .form-buttons{"data-hook" => "buttons"} =link_to_with_icon "icon-ok-sign", "Finalise User Invoices", - main_app.start_job_admin_accounts_and_billing_settings_path(job: { name: "finalize_user_invoices" }), + main_app.start_job_admin_accounts_and_billing_settings_path(job: { name: "finalize_account_invoices" }), class: "button fullwidth" %br - - if @finalize_user_invoices_job + - if @finalize_account_invoices_job %p.text-center - - if @finalize_user_invoices_job.run_at < Time.now + - if @finalize_account_invoices_job.run_at < Time.now %strong In Progress %br Started at: @@ -82,7 +82,7 @@ %strong Queued %br Scheduled for: - = @finalize_user_invoices_job.run_at + = @finalize_account_invoices_job.run_at - else %p.explanation Use this button to finalize all invoices in the system for the previous calendar month. This task can be set up to run automatically once a month. diff --git a/config/schedule.rb b/config/schedule.rb index d5417cec81..a09ca55dce 100644 --- a/config/schedule.rb +++ b/config/schedule.rb @@ -20,10 +20,10 @@ every 4.hours do end every 1.day, at: '1:00am' do - rake 'openfoodnetwork:billing:update_user_invoices' + rake 'openfoodnetwork:billing:update_account_invoices' end # On the 2nd of every month at 1:30am every '30 1 2 * *' do - rake 'openfoodnetwork:billing:finalize_user_invoices' + rake 'openfoodnetwork:billing:finalize_account_invoices' end diff --git a/lib/tasks/billing.rake b/lib/tasks/billing.rake index 13930f1f58..6bfd0a53e7 100644 --- a/lib/tasks/billing.rake +++ b/lib/tasks/billing.rake @@ -1,13 +1,13 @@ namespace :openfoodnetwork do namespace :billing do desc 'Update enterprise user invoices' - task update_user_invoices: :environment do - Delayed::Job.enqueue(UpdateUserInvoices.new) if Spree::Config[:auto_update_invoices] + task update_account_invoices: :environment do + Delayed::Job.enqueue(UpdateAccountInvoices.new) if Spree::Config[:auto_update_invoices] end desc 'Finalize enterprise user invoices' - task finalize_user_invoices: :environment do - Delayed::Job.enqueue(FinalizeUserInvoices.new) if Spree::Config[:auto_finalize_invoices] + task finalize_account_invoices: :environment do + Delayed::Job.enqueue(FinalizeAccountInvoices.new) if Spree::Config[:auto_finalize_invoices] end end end diff --git a/spec/controllers/admin/accounts_and_billing_settings_controller_spec.rb b/spec/controllers/admin/accounts_and_billing_settings_controller_spec.rb index 2958bc86c5..7ec9eb1ca0 100644 --- a/spec/controllers/admin/accounts_and_billing_settings_controller_spec.rb +++ b/spec/controllers/admin/accounts_and_billing_settings_controller_spec.rb @@ -151,8 +151,8 @@ describe Admin::AccountsAndBillingSettingsController, type: :controller do end end - context "and job_name is update_user_invoices" do - let!(:params) { { job: { name: "update_user_invoices" } } } + context "and job_name is update_account_invoices" do + let!(:params) { { job: { name: "update_account_invoices" } } } context "and no jobs are currently running" do before do @@ -160,7 +160,7 @@ describe Admin::AccountsAndBillingSettingsController, type: :controller do end it "runs the job" do - expect{spree_post :start_job, params}.to enqueue_job UpdateUserInvoices + expect{spree_post :start_job, params}.to enqueue_job UpdateAccountInvoices expect(flash[:success]).to eq "Task Queued" expect(response).to redirect_to edit_admin_accounts_and_billing_settings_path end @@ -169,19 +169,19 @@ describe Admin::AccountsAndBillingSettingsController, type: :controller do context "and there are jobs currently running" do before do allow(controller).to receive(:load_jobs) - controller.instance_variable_set("@update_user_invoices_job", double(:update_user_invoices_job)) + controller.instance_variable_set("@update_account_invoices_job", double(:update_account_invoices_job)) end it "does not run the job" do - expect{spree_post :start_job, params}.to_not enqueue_job UpdateUserInvoices + expect{spree_post :start_job, params}.to_not enqueue_job UpdateAccountInvoices expect(flash[:error]).to eq "A task is already running, please wait until it has finished" expect(response).to redirect_to edit_admin_accounts_and_billing_settings_path end end end - context "and job_name is finalize_user_invoices" do - let!(:params) { { job: { name: "finalize_user_invoices" } } } + context "and job_name is finalize_account_invoices" do + let!(:params) { { job: { name: "finalize_account_invoices" } } } context "and no jobs are currently running" do before do @@ -189,7 +189,7 @@ describe Admin::AccountsAndBillingSettingsController, type: :controller do end it "runs the job" do - expect{spree_post :start_job, params}.to enqueue_job FinalizeUserInvoices + expect{spree_post :start_job, params}.to enqueue_job FinalizeAccountInvoices expect(flash[:success]).to eq "Task Queued" expect(response).to redirect_to edit_admin_accounts_and_billing_settings_path end @@ -198,11 +198,11 @@ describe Admin::AccountsAndBillingSettingsController, type: :controller do context "and there are jobs currently running" do before do allow(controller).to receive(:load_jobs) - controller.instance_variable_set("@finalize_user_invoices_job", double(:finalize_user_invoices_job)) + controller.instance_variable_set("@finalize_account_invoices_job", double(:finalize_account_invoices_job)) end it "does not run the job" do - expect{spree_post :start_job, params}.to_not enqueue_job FinalizeUserInvoices + expect{spree_post :start_job, params}.to_not enqueue_job FinalizeAccountInvoices expect(flash[:error]).to eq "A task is already running, please wait until it has finished" expect(response).to redirect_to edit_admin_accounts_and_billing_settings_path end diff --git a/spec/features/admin/accounts_and_billing_settings_spec.rb b/spec/features/admin/accounts_and_billing_settings_spec.rb index 15a36dbf47..b5316f6b21 100644 --- a/spec/features/admin/accounts_and_billing_settings_spec.rb +++ b/spec/features/admin/accounts_and_billing_settings_spec.rb @@ -34,8 +34,8 @@ feature 'Account and Billing Settings' do select2_select accounts_distributor.name, from: "settings_accounts_distributor_id" expect(page).to have_select "settings_default_accounts_payment_method_id" expect(page).to have_select "settings_default_accounts_shipping_method_id" - expect(page).to have_link "Update User Invoices", href: start_job_admin_accounts_and_billing_settings_path(job: { name: 'update_user_invoices'}) - expect(page).to have_link "Finalise User Invoices", href: start_job_admin_accounts_and_billing_settings_path(job: { name: 'finalize_user_invoices'}) + expect(page).to have_link "Update User Invoices", href: start_job_admin_accounts_and_billing_settings_path(job: { name: 'update_account_invoices'}) + expect(page).to have_link "Finalise User Invoices", href: start_job_admin_accounts_and_billing_settings_path(job: { name: 'finalize_account_invoices'}) end it "attributes can be changed", js: true do diff --git a/spec/jobs/finalize_user_invoices_spec.rb b/spec/jobs/finalize_user_invoices_spec.rb index 52e2444e8c..ae65540881 100644 --- a/spec/jobs/finalize_user_invoices_spec.rb +++ b/spec/jobs/finalize_user_invoices_spec.rb @@ -5,9 +5,9 @@ def travel_to(time) end -describe FinalizeUserInvoices do +describe FinalizeAccountInvoices do describe "unit specs" do - let!(:finalizer) { FinalizeUserInvoices.new } + let!(:finalizer) { FinalizeAccountInvoices.new } let!(:start_of_july) { Time.now.beginning_of_year + 6.months } describe "perform" do @@ -81,7 +81,7 @@ describe FinalizeUserInvoices do end context "and specfic start and end dates are passed as arguments" do - let!(:finalizer) { FinalizeUserInvoices.new(Time.now.year, 6) } + let!(:finalizer) { FinalizeAccountInvoices.new(Time.now.year, 6) } before do allow(finalizer).to receive(:finalizer) @@ -145,8 +145,8 @@ describe FinalizeUserInvoices do describe "validation spec" do let!(:start_of_july) { Time.now.beginning_of_year + 6.months } - let!(:updater) { UpdateUserInvoices.new } - let!(:finalizer) { FinalizeUserInvoices.new } + let!(:updater) { UpdateAccountInvoices.new } + let!(:finalizer) { FinalizeAccountInvoices.new } let!(:pm) { create(:payment_method, name: "Default Payment Method") } let!(:sm) { create(:shipping_method, name: "Default Shipping Method") } diff --git a/spec/jobs/update_user_invoices_spec.rb b/spec/jobs/update_user_invoices_spec.rb index 6bca171bba..88f96d6ce6 100644 --- a/spec/jobs/update_user_invoices_spec.rb +++ b/spec/jobs/update_user_invoices_spec.rb @@ -4,11 +4,11 @@ def travel_to(time) around { |example| Timecop.travel(start_of_july + time) { example.run } } end -describe UpdateUserInvoices do +describe UpdateAccountInvoices do describe "units specs" do let!(:start_of_july) { Time.now.beginning_of_year + 6.months } - let!(:updater) { UpdateUserInvoices.new } + let!(:updater) { UpdateAccountInvoices.new } let!(:user) { create(:user) } let!(:old_billable_period) { create(:billable_period, owner: user, begins_at: start_of_july - 1.month, ends_at: start_of_july) } @@ -61,7 +61,7 @@ describe UpdateUserInvoices do end context "when specfic start and end dates are passed as arguments" do - let!(:updater) { UpdateUserInvoices.new(Time.now.year, 7) } + let!(:updater) { UpdateAccountInvoices.new(Time.now.year, 7) } before do allow(updater).to receive(:update_invoice_for) @@ -323,7 +323,7 @@ describe UpdateUserInvoices do describe "validation spec" do let!(:start_of_july) { Time.now.beginning_of_year + 6.months } - let!(:updater) { UpdateUserInvoices.new } + let!(:updater) { UpdateAccountInvoices.new } let!(:accounts_distributor) { create(:distributor_enterprise) }