Fix email subject

This commit is contained in:
Alex Sherman 2020-11-05 11:22:25 +05:00
parent c3f63ed43a
commit 344da76dc6
3 changed files with 14 additions and 7 deletions

View file

@ -17,7 +17,7 @@ class DomainExpireMailer < ApplicationMailer
logger.info("Send DomainExpireMailer##{method_name} email for #{domain.name} (##{domain.id})" \
" to #{recipient(domain).join(', ')}")
mail(to: recipient(domain), subject: subject)
mail(to: recipient(domain), subject: subject(method_name))
end
def init(domain, registrar)
@ -29,8 +29,8 @@ class DomainExpireMailer < ApplicationMailer
filter_invalid_emails(emails: domain.primary_contact_emails, domain: @domain)
end
def subject
default_i18n_subject(domain_name: @domain.name)
def subject(method_name)
I18n.t("domain_expire_mailer.#{method_name}.subject", domain_name: @domain.name)
end
def domain_presenter(domain:)

View file

@ -4,4 +4,9 @@ en:
subject: >-
Domeen %{domain_name} on aegunud
/ Domain %{domain_name} has expired
/ Срок действия домена %{domain_name} истек
/ Срок действия домена %{domain_name} истек
expired_soft:
subject: >-
Domeen %{domain_name} on aegunud ning suunatud kustutusmenetlusse
/ Domain %{domain_name} has expired and directed into deletion process
/ Срок действия домена %{domain_name} истек

View file

@ -8,16 +8,18 @@ class DomainExpireMailerTest < ActionMailer::TestCase
email = DomainExpireMailer.expired(domain: domain, registrar: domain.registrar).deliver_now
assert_emails 1
assert_equal 'Domeen shop.test on aegunud / Domain shop.test has expired' \
' / Срок действия домена shop.test истек', email.subject
assert_equal I18n.t("domain_expire_mailer.expired.subject", domain_name: domain.name),
email.subject
end
def test_delivers_domain_expiration_soft_email
domain = domains(:shop)
assert_equal 'shop.test', domain.name
DomainExpireMailer.expired_soft(domain: domain, registrar: domain.registrar).deliver_now
email = DomainExpireMailer.expired_soft(domain: domain, registrar: domain.registrar).deliver_now
assert_emails 1
assert_equal I18n.t("domain_expire_mailer.expired_soft.subject", domain_name: domain.name),
email.subject
end
end