From 6a7f795f6495389bb02bd6ec10294fa34dbc1350 Mon Sep 17 00:00:00 2001 From: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com> Date: Sat, 9 Jan 2021 11:33:10 +0000 Subject: [PATCH 1/3] Remove WelcomeEnterpriseJob --- app/jobs/welcome_enterprise_job.rb | 8 -------- app/models/enterprise.rb | 2 +- spec/jobs/welcome_enterprise_job_spec.rb | 15 --------------- spec/models/enterprise_spec.rb | 4 +++- 4 files changed, 4 insertions(+), 25 deletions(-) delete mode 100644 app/jobs/welcome_enterprise_job.rb delete mode 100644 spec/jobs/welcome_enterprise_job_spec.rb diff --git a/app/jobs/welcome_enterprise_job.rb b/app/jobs/welcome_enterprise_job.rb deleted file mode 100644 index 1c36d5a916..0000000000 --- a/app/jobs/welcome_enterprise_job.rb +++ /dev/null @@ -1,8 +0,0 @@ -# frozen_string_literal: true - -class WelcomeEnterpriseJob < ActiveJob::Base - def perform(enterprise_id) - enterprise = Enterprise.find enterprise_id - EnterpriseMailer.welcome(enterprise).deliver_now - end -end diff --git a/app/models/enterprise.rb b/app/models/enterprise.rb index 4c7aa40bd8..b3a5669f03 100644 --- a/app/models/enterprise.rb +++ b/app/models/enterprise.rb @@ -400,7 +400,7 @@ class Enterprise < ActiveRecord::Base end def send_welcome_email - WelcomeEnterpriseJob.perform_later(id) + EnterpriseMailer.welcome(self).deliver_later end def strip_url(url) diff --git a/spec/jobs/welcome_enterprise_job_spec.rb b/spec/jobs/welcome_enterprise_job_spec.rb deleted file mode 100644 index 4ccbe8eff4..0000000000 --- a/spec/jobs/welcome_enterprise_job_spec.rb +++ /dev/null @@ -1,15 +0,0 @@ -# frozen_string_literal: true - -require 'spec_helper' - -describe WelcomeEnterpriseJob do - let(:enterprise) { create(:enterprise) } - - it "sends a welcome email to the enterprise" do - mail = double(:mail) - expect(EnterpriseMailer).to receive(:welcome).with(enterprise).and_return(mail) - expect(mail).to receive(:deliver_now) - - WelcomeEnterpriseJob.perform_now(enterprise.id) - end -end diff --git a/spec/models/enterprise_spec.rb b/spec/models/enterprise_spec.rb index 9bf8944425..48643c23e9 100644 --- a/spec/models/enterprise_spec.rb +++ b/spec/models/enterprise_spec.rb @@ -11,7 +11,9 @@ describe Enterprise do it "sends a welcome email" do expect do create(:enterprise, owner: user) - end.to enqueue_job WelcomeEnterpriseJob + end.to enqueue_job ActionMailer::DeliveryJob + + expect(enqueued_jobs.last.to_s).to match "welcome" end end end From ca42b1fff7ee954e1a76508f72d682a29ca52036 Mon Sep 17 00:00:00 2001 From: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com> Date: Sat, 9 Jan 2021 11:38:29 +0000 Subject: [PATCH 2/3] Remove ConfirmSignupJob --- app/jobs/confirm_signup_job.rb | 8 -------- app/models/spree/user.rb | 2 +- spec/jobs/confirm_signup_job_spec.rb | 15 --------------- spec/models/spree/user_spec.rb | 4 +++- 4 files changed, 4 insertions(+), 25 deletions(-) delete mode 100644 app/jobs/confirm_signup_job.rb delete mode 100644 spec/jobs/confirm_signup_job_spec.rb diff --git a/app/jobs/confirm_signup_job.rb b/app/jobs/confirm_signup_job.rb deleted file mode 100644 index 8f3a9cd66a..0000000000 --- a/app/jobs/confirm_signup_job.rb +++ /dev/null @@ -1,8 +0,0 @@ -# frozen_string_literal: true - -class ConfirmSignupJob < ActiveJob::Base - def perform(user_id) - user = Spree::User.find user_id - Spree::UserMailer.signup_confirmation(user).deliver_now - end -end diff --git a/app/models/spree/user.rb b/app/models/spree/user.rb index 089175595b..8d6f4add10 100644 --- a/app/models/spree/user.rb +++ b/app/models/spree/user.rb @@ -101,7 +101,7 @@ module Spree end def send_signup_confirmation - ConfirmSignupJob.perform_later(id) + Spree::UserMailer.signup_confirmation(self).deliver_later end def associate_customers diff --git a/spec/jobs/confirm_signup_job_spec.rb b/spec/jobs/confirm_signup_job_spec.rb deleted file mode 100644 index 7c42ad472c..0000000000 --- a/spec/jobs/confirm_signup_job_spec.rb +++ /dev/null @@ -1,15 +0,0 @@ -# frozen_string_literal: true - -require 'spec_helper' - -describe ConfirmSignupJob do - let(:user) { create(:user) } - - it "sends a confirmation email to the user" do - mail = double(:mail) - expect(Spree::UserMailer).to receive(:signup_confirmation).with(user).and_return(mail) - expect(mail).to receive(:deliver_now) - - ConfirmSignupJob.perform_now(user.id) - end -end diff --git a/spec/models/spree/user_spec.rb b/spec/models/spree/user_spec.rb index dcf8805ea9..2c827962d0 100644 --- a/spec/models/spree/user_spec.rb +++ b/spec/models/spree/user_spec.rb @@ -111,7 +111,9 @@ describe Spree::User do expect do create(:user, confirmed_at: nil).confirm - end.to enqueue_job ConfirmSignupJob + end.to enqueue_job ActionMailer::DeliveryJob + + expect(enqueued_jobs.last.to_s).to match "signup_confirmation" end end From dd5a197fb3509bce0448617ad28bea18c30df382 Mon Sep 17 00:00:00 2001 From: Matt-Yorkley <9029026+Matt-Yorkley@users.noreply.github.com> Date: Sat, 9 Jan 2021 11:46:08 +0000 Subject: [PATCH 3/3] Remove ManagerInvitationJob --- app/controllers/admin/manager_invitations_controller.rb | 2 +- app/jobs/manager_invitation_job.rb | 9 --------- .../admin/manager_invitations_controller_spec.rb | 9 +++++---- 3 files changed, 6 insertions(+), 14 deletions(-) delete mode 100644 app/jobs/manager_invitation_job.rb diff --git a/app/controllers/admin/manager_invitations_controller.rb b/app/controllers/admin/manager_invitations_controller.rb index 0972f7013a..3d9e93323d 100644 --- a/app/controllers/admin/manager_invitations_controller.rb +++ b/app/controllers/admin/manager_invitations_controller.rb @@ -35,7 +35,7 @@ module Admin new_user.save! @enterprise.users << new_user - ManagerInvitationJob.perform_later(@enterprise.id, new_user.id) + EnterpriseMailer.manager_invitation(@enterprise, new_user).deliver_later new_user end diff --git a/app/jobs/manager_invitation_job.rb b/app/jobs/manager_invitation_job.rb deleted file mode 100644 index d7f4b905bc..0000000000 --- a/app/jobs/manager_invitation_job.rb +++ /dev/null @@ -1,9 +0,0 @@ -# frozen_string_literal: true - -class ManagerInvitationJob < ActiveJob::Base - def perform(enterprise_id, user_id) - enterprise = Enterprise.find enterprise_id - user = Spree::User.find user_id - EnterpriseMailer.manager_invitation(enterprise, user).deliver_now - end -end diff --git a/spec/controllers/admin/manager_invitations_controller_spec.rb b/spec/controllers/admin/manager_invitations_controller_spec.rb index fb5d08fe00..daffc3d98e 100644 --- a/spec/controllers/admin/manager_invitations_controller_spec.rb +++ b/spec/controllers/admin/manager_invitations_controller_spec.rb @@ -28,16 +28,17 @@ module Admin end context "signing up a new user" do - let(:manager_invitation) { instance_double(ManagerInvitationJob) } + let(:mail_mock) { double(:mailer, deliver_later: true) } before do - setup_email + allow(EnterpriseMailer).to receive(:manager_invitation). + with(enterprise, kind_of(Spree::User)) { mail_mock } + allow(controller).to receive_messages spree_current_user: admin end it 'enqueues an invitation email' do - expect(ManagerInvitationJob) - .to receive(:perform_later).with(enterprise.id, kind_of(Integer)) + expect(mail_mock).to receive(:deliver_later) spree_post :create, email: 'un.registered@email.com', enterprise_id: enterprise.id end