Fix domain expiration mailer email validation

This commit is contained in:
Alex Sherman 2021-03-23 12:50:25 +05:00
parent b5cbb33e1c
commit ab248a641e
7 changed files with 64 additions and 42 deletions

View file

@ -14,7 +14,9 @@ class StartTest < ActiveSupport::TestCase
QueJob.where("args->>0 = '#{@domain.id}'", job_class: DomainExpireEmailJob.name).count
end
assert_difference job_count, 1 do
one_job_per_contact_email = @domain.expired_domain_contact_emails.count
assert_difference job_count, one_job_per_contact_email do
perform_enqueued_jobs do
DomainCron.start_expire_period
end

View file

@ -6,10 +6,11 @@ class DomainExpireEmailJobTest < ActiveSupport::TestCase
travel_to Time.zone.parse('2010-08-06')
@domain.update(valid_to: Time.now - 1.day)
@domain.reload
@email = @domain.registrant.email
end
def test_domain_expire
success = DomainExpireEmailJob.run(@domain.id)
success = DomainExpireEmailJob.run(@domain.id, @email)
assert success
end
@ -18,7 +19,7 @@ class DomainExpireEmailJobTest < ActiveSupport::TestCase
@domain.reload
assert_equal ['serverForceDelete'], @domain.statuses
success = DomainExpireEmailJob.run(@domain.id)
success = DomainExpireEmailJob.run(@domain.id, @email)
assert success
statuses = @domain.statuses
@ -26,4 +27,4 @@ class DomainExpireEmailJobTest < ActiveSupport::TestCase
@domain.update(statuses: statuses)
assert_equal ['ok'], @domain.statuses
end
end
end

View file

@ -3,9 +3,12 @@ require 'test_helper'
class DomainExpireMailerTest < ActionMailer::TestCase
def test_delivers_domain_expiration_email
domain = domains(:shop)
email = domain.registrar.email
assert_equal 'shop.test', domain.name
email = DomainExpireMailer.expired(domain: domain, registrar: domain.registrar).deliver_now
email = DomainExpireMailer.expired(domain: domain,
registrar: domain.registrar,
email: email).deliver_now
assert_emails 1
assert_equal I18n.t("domain_expire_mailer.expired.subject", domain_name: domain.name),
@ -14,9 +17,12 @@ class DomainExpireMailerTest < ActionMailer::TestCase
def test_delivers_domain_expiration_soft_email
domain = domains(:shop)
email = domain.registrar.email
assert_equal 'shop.test', domain.name
email = DomainExpireMailer.expired_soft(domain: domain, registrar: domain.registrar).deliver_now
email = DomainExpireMailer.expired_soft(domain: domain,
registrar: domain.registrar,
email: email).deliver_now
assert_emails 1
assert_equal I18n.t("domain_expire_mailer.expired_soft.subject", domain_name: domain.name),
@ -25,6 +31,7 @@ class DomainExpireMailerTest < ActionMailer::TestCase
def test_delivers_domain_expiration_soft_email_if_auto_fd
domain = domains(:shop)
email_address = domain.registrar.email
assert_not domain.force_delete_scheduled?
travel_to Time.zone.parse('2010-07-05')
email = 'some@strangesentence@internet.ee'
@ -41,7 +48,9 @@ class DomainExpireMailerTest < ActionMailer::TestCase
assert domain.force_delete_scheduled?
email = DomainExpireMailer.expired_soft(domain: domain, registrar: domain.registrar).deliver_now
email = DomainExpireMailer.expired_soft(domain: domain,
registrar: domain.registrar,
email: email_address).deliver_now
assert_emails 1
assert_equal I18n.t("domain_expire_mailer.expired_soft.subject", domain_name: domain.name),