diff --git a/app/forms/user_invitation.rb b/app/forms/user_invitation.rb index db7fba54d4..f1da146f6e 100644 --- a/app/forms/user_invitation.rb +++ b/app/forms/user_invitation.rb @@ -19,7 +19,10 @@ class UserInvitation user = find_or_create_user! enterprise.users << user - EnterpriseMailer.manager_invitation(enterprise, user).deliver_later + + if user.previously_new_record? + EnterpriseMailer.manager_invitation(enterprise, user).deliver_later + end end private diff --git a/spec/forms/user_invitation_spec.rb b/spec/forms/user_invitation_spec.rb index 71d69c60a2..856f675790 100644 --- a/spec/forms/user_invitation_spec.rb +++ b/spec/forms/user_invitation_spec.rb @@ -53,13 +53,11 @@ RSpec.describe UserInvitation do end context "inviting a existing user who isn't a user on the enterprise" do - it "adds the user to the enterprise and sends them an invitation email" do + it "adds the user to the enterprise" do existing_user = create(:user) - user_invitation = UserInvitation.new(defaults.merge(email: existing_user.email)) - expect do - user_invitation.save! - end.to have_enqueued_mail(EnterpriseMailer, :manager_invitation) + user_invitation = UserInvitation.new(defaults.merge(email: existing_user.email)) + user_invitation.save! expect(enterprise.users).to include(existing_user) end