diff --git a/app/mailers/contact_mailer.rb b/app/mailers/contact_mailer.rb index 4db130006..cf8c03d38 100644 --- a/app/mailers/contact_mailer.rb +++ b/app/mailers/contact_mailer.rb @@ -8,7 +8,14 @@ class ContactMailer < ApplicationMailer return if contact.deliver_emails != true @contact = contact - mail(to: [@contact.email, @contact.email_was], - subject: "#{I18n.t(:contact_email_update_subject)} [#{@contact.code}]") + + emails = [] + emails << [@contact.email, @contact.email_was] if @contact.registrant_domains.present? + emails << @contact.domains.map(&:email) if @contact.domains.present? + emails = emails.uniq + + emails.each do |email| + mail(to: email, subject: "#{I18n.t(:contact_email_update_subject)} [#{@contact.code}]") + end end end diff --git a/spec/mailers/contact_mailer_spec.rb b/spec/mailers/contact_mailer_spec.rb index 76b98e717..9f825b380 100644 --- a/spec/mailers/contact_mailer_spec.rb +++ b/spec/mailers/contact_mailer_spec.rb @@ -27,7 +27,8 @@ describe ContactMailer do describe 'email changed notification' do before :all do - @contact = Fabricate(:contact, email: 'test@example.com') + @domain = Fabricate(:domain) + @contact = @domain.registrant @contact.deliver_emails = true @contact.email = 'test@example.org' # new email @mail = ContactMailer.email_updated(@contact) @@ -42,7 +43,8 @@ describe ContactMailer do end it 'should have both old and new receiver email' do - @mail.to.should == ["test@example.org", "test@example.com"] + @mail.to.size.should == 2 + @mail.to.include? "test@example.org" end it 'should render body' do