mirror of
https://github.com/internetee/registry.git
synced 2025-07-01 16:53:37 +02:00
Log RegistrantChange#expired, RegistrantChange#notice emails sending
#186
This commit is contained in:
parent
64be27fe53
commit
968a59cd3d
4 changed files with 106 additions and 1 deletions
|
@ -1,8 +1,20 @@
|
||||||
class RegistrantChangeExpiredEmailJob < Que::Job
|
class RegistrantChangeExpiredEmailJob < Que::Job
|
||||||
def run(domain_id)
|
def run(domain_id)
|
||||||
domain = Domain.find(domain_id)
|
domain = Domain.find(domain_id)
|
||||||
|
log(domain)
|
||||||
RegistrantChangeMailer.expired(domain: domain,
|
RegistrantChangeMailer.expired(domain: domain,
|
||||||
registrar: domain.registrar,
|
registrar: domain.registrar,
|
||||||
registrant: domain.registrant).deliver_now
|
registrant: domain.registrant).deliver_now
|
||||||
end
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
def log(domain)
|
||||||
|
message = "Send RegistrantChangeMailer#expired email for domain ##{domain.id} to #{domain.new_registrant_email}"
|
||||||
|
logger.info(message)
|
||||||
|
end
|
||||||
|
|
||||||
|
def logger
|
||||||
|
Rails.logger
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -2,10 +2,21 @@ class RegistrantChangeNoticeEmailJob < Que::Job
|
||||||
def run(domain_id, new_registrant_id)
|
def run(domain_id, new_registrant_id)
|
||||||
domain = Domain.find(domain_id)
|
domain = Domain.find(domain_id)
|
||||||
new_registrant = Registrant.find(new_registrant_id)
|
new_registrant = Registrant.find(new_registrant_id)
|
||||||
|
log(domain, new_registrant)
|
||||||
RegistrantChangeMailer.notice(domain: domain,
|
RegistrantChangeMailer.notice(domain: domain,
|
||||||
registrar: domain.registrar,
|
registrar: domain.registrar,
|
||||||
current_registrant: domain.registrant,
|
current_registrant: domain.registrant,
|
||||||
new_registrant: new_registrant).deliver_now
|
new_registrant: new_registrant).deliver_now
|
||||||
end
|
end
|
||||||
|
|
||||||
|
private
|
||||||
|
|
||||||
|
def log(domain, new_registrant)
|
||||||
|
message = "Send RegistrantChangeMailer#notice email for domain ##{domain.id} to #{new_registrant.email}"
|
||||||
|
logger.info(message)
|
||||||
|
end
|
||||||
|
|
||||||
|
def logger
|
||||||
|
Rails.logger
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
39
spec/jobs/registrant_change_expired_email_job_spec.rb
Normal file
39
spec/jobs/registrant_change_expired_email_job_spec.rb
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
RSpec.describe RegistrantChangeExpiredEmailJob do
|
||||||
|
describe '#run' do
|
||||||
|
let(:domain) { instance_double(Domain,
|
||||||
|
id: 1,
|
||||||
|
new_registrant_email: 'new-registrant@test.com',
|
||||||
|
registrar: 'registrar',
|
||||||
|
registrant: 'registrant')
|
||||||
|
}
|
||||||
|
let(:message) { instance_double(ActionMailer::MessageDelivery) }
|
||||||
|
|
||||||
|
before :example do
|
||||||
|
expect(Domain).to receive(:find).and_return(domain)
|
||||||
|
end
|
||||||
|
|
||||||
|
after :example do
|
||||||
|
domain_id = 1
|
||||||
|
described_class.enqueue(domain_id)
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'creates log record' do
|
||||||
|
log_message = 'Send RegistrantChangeMailer#expired email for domain #1 to new-registrant@test.com'
|
||||||
|
|
||||||
|
allow(RegistrantChangeMailer).to receive(:expired).and_return(message)
|
||||||
|
allow(message).to receive(:deliver_now)
|
||||||
|
|
||||||
|
expect(Rails.logger).to receive(:info).with(log_message)
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'sends email' do
|
||||||
|
expect(RegistrantChangeMailer).to receive(:expired).with(domain: domain,
|
||||||
|
registrar: 'registrar',
|
||||||
|
registrant: 'registrant')
|
||||||
|
.and_return(message)
|
||||||
|
expect(message).to receive(:deliver_now)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
43
spec/jobs/registrant_change_notice_email_job_spec.rb
Normal file
43
spec/jobs/registrant_change_notice_email_job_spec.rb
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
RSpec.describe RegistrantChangeNoticeEmailJob do
|
||||||
|
describe '#run' do
|
||||||
|
let(:domain) { instance_double(Domain,
|
||||||
|
id: 1,
|
||||||
|
registrant_email: 'registrant@test.com',
|
||||||
|
registrar: 'registrar',
|
||||||
|
registrant: 'registrant')
|
||||||
|
}
|
||||||
|
let(:new_registrant) { instance_double(Registrant, email: 'new-registrant@test.com') }
|
||||||
|
let(:message) { instance_double(ActionMailer::MessageDelivery) }
|
||||||
|
|
||||||
|
before :example do
|
||||||
|
expect(Domain).to receive(:find).and_return(domain)
|
||||||
|
expect(Registrant).to receive(:find).and_return(new_registrant)
|
||||||
|
end
|
||||||
|
|
||||||
|
after :example do
|
||||||
|
domain_id = 1
|
||||||
|
new_registrant_id = 1
|
||||||
|
described_class.enqueue(domain_id, new_registrant_id)
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'creates log record' do
|
||||||
|
log_message = 'Send RegistrantChangeMailer#notice email for domain #1 to new-registrant@test.com'
|
||||||
|
|
||||||
|
allow(RegistrantChangeMailer).to receive(:notice).and_return(message)
|
||||||
|
allow(message).to receive(:deliver_now)
|
||||||
|
|
||||||
|
expect(Rails.logger).to receive(:info).with(log_message)
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'sends email' do
|
||||||
|
expect(RegistrantChangeMailer).to receive(:notice).with(domain: domain,
|
||||||
|
registrar: 'registrar',
|
||||||
|
current_registrant: 'registrant',
|
||||||
|
new_registrant: new_registrant)
|
||||||
|
.and_return(message)
|
||||||
|
expect(message).to receive(:deliver_now)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
Loading…
Add table
Add a link
Reference in a new issue