From 875a00f86389cfed0f936c35a05dab64aff0d240 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Tue, 9 Apr 2019 14:42:19 +0300 Subject: [PATCH 1/6] Improve readability --- app/jobs/domain_delete_confirm_email_job.rb | 6 +++--- app/mailers/domain_delete_mailer.rb | 6 +++--- .../{confirm.html.erb => confirmation.html.erb} | 4 ++-- .../{confirm.text.erb => confirmation.text.erb} | 4 ++-- config/locales/mailers/domain_delete.en.yml | 2 +- test/mailers/domain_delete_mailer_test.rb | 6 +++--- 6 files changed, 14 insertions(+), 14 deletions(-) rename app/views/mailers/domain_delete_mailer/{confirm.html.erb => confirmation.html.erb} (92%) rename app/views/mailers/domain_delete_mailer/{confirm.text.erb => confirmation.text.erb} (96%) diff --git a/app/jobs/domain_delete_confirm_email_job.rb b/app/jobs/domain_delete_confirm_email_job.rb index d2f2911e3..fafe143e1 100644 --- a/app/jobs/domain_delete_confirm_email_job.rb +++ b/app/jobs/domain_delete_confirm_email_job.rb @@ -3,9 +3,9 @@ class DomainDeleteConfirmEmailJob < Que::Job domain = Domain.find(domain_id) log(domain) - DomainDeleteMailer.confirm(domain: domain, - registrar: domain.registrar, - registrant: domain.registrant).deliver_now + DomainDeleteMailer.confirmation(domain: domain, + registrar: domain.registrar, + registrant: domain.registrant).deliver_now end private diff --git a/app/mailers/domain_delete_mailer.rb b/app/mailers/domain_delete_mailer.rb index aa4d38533..46ad963fb 100644 --- a/app/mailers/domain_delete_mailer.rb +++ b/app/mailers/domain_delete_mailer.rb @@ -3,10 +3,10 @@ class DomainDeleteMailer < ApplicationMailer %w[private_person legal_person] end - def confirm(domain:, registrar:, registrant:) + def confirmation(domain:, registrar:, registrant:) @domain = DomainPresenter.new(domain: domain, view: view_context) @registrar = RegistrarPresenter.new(registrar: registrar, view: view_context) - @confirm_url = confirm_url(domain) + @confirmation_url = confirmation_url(domain) subject = default_i18n_subject(domain_name: domain.name) mail(to: registrant.email, subject: subject) @@ -28,7 +28,7 @@ class DomainDeleteMailer < ApplicationMailer private - def confirm_url(domain) + def confirmation_url(domain) registrant_domain_delete_confirm_url(domain, token: domain.registrant_verification_token) end end diff --git a/app/views/mailers/domain_delete_mailer/confirm.html.erb b/app/views/mailers/domain_delete_mailer/confirmation.html.erb similarity index 92% rename from app/views/mailers/domain_delete_mailer/confirm.html.erb rename to app/views/mailers/domain_delete_mailer/confirmation.html.erb index e62890ed1..f6754ff5c 100644 --- a/app/views/mailers/domain_delete_mailer/confirm.html.erb +++ b/app/views/mailers/domain_delete_mailer/confirmation.html.erb @@ -8,7 +8,7 @@ Registrisse laekus taotlus domeeni <%= @domain.name %> kustutamiseks. Palun veen Muudatuse kinnitamiseks külastage palun allolevat lehekülge, kontrollige uuesti üle muudatuse andmed ning vajutage nuppu kinnitan.

Taotlus on aktiivne <%= Setting.expire_pending_confirmation %> tundi ja lükatakse automaatselt tagasi kui te seda enne ise ei kinnita või tagasi lükka.
-<%= link_to @confirm_url, @confirm_url %> +<%= link_to @confirmation_url, @confirmation_url %>

Lugupidamisega
Eesti Interneti Sihtasutus @@ -23,7 +23,7 @@ Application for deletion of your domain <%= @domain.name %> has been filed. Plea

To confirm the update please visit this website, once again review the data and press approve:
-<%= link_to @confirm_url, @confirm_url %> +<%= link_to @confirmation_url, @confirmation_url %>

The application will remain in pending status for <%= Setting.expire_pending_confirmation %> hrs and will be automatically rejected if it is not approved nor rejected before.

diff --git a/app/views/mailers/domain_delete_mailer/confirm.text.erb b/app/views/mailers/domain_delete_mailer/confirmation.text.erb similarity index 96% rename from app/views/mailers/domain_delete_mailer/confirm.text.erb rename to app/views/mailers/domain_delete_mailer/confirmation.text.erb index 7d2e1cb05..b1dddd773 100644 --- a/app/views/mailers/domain_delete_mailer/confirm.text.erb +++ b/app/views/mailers/domain_delete_mailer/confirmation.text.erb @@ -7,7 +7,7 @@ Registrisse laekus taotlus domeeni <%= @domain.name %> kustutamiseks. Palun veen Muudatuse kinnitamiseks külastage palun allolevat lehekülge, kontrollige uuesti üle muudatuse andmed ning vajutage nuppu kinnitan. Taotlus on aktiivne <%= Setting.expire_pending_confirmation %> tundi ja lükatakse automaatselt tagasi kui te seda enne ise ei kinnita või tagasi lükka. -<%= @confirm_url %> +<%= @confirmation_url %> Lugupidamisega Eesti Interneti Sihtasutus @@ -21,7 +21,7 @@ Application for deletion of your domain <%= @domain.name %> has been filed. Plea <%= render 'mailers/shared/registrar/registrar.en.text', registrar: @registrar %> To confirm the update please visit this website, once again review the data and press approve: -<%= @confirm_url %> +<%= @confirmation_url %> The application will remain in pending status for <%= Setting.expire_pending_confirmation %> hrs and will be automatically rejected if it is not approved nor rejected before. diff --git a/config/locales/mailers/domain_delete.en.yml b/config/locales/mailers/domain_delete.en.yml index 57bf126bf..5191f4da2 100644 --- a/config/locales/mailers/domain_delete.en.yml +++ b/config/locales/mailers/domain_delete.en.yml @@ -1,6 +1,6 @@ en: domain_delete_mailer: - confirm: + confirmation: subject: Kinnitustaotlus domeeni %{domain_name} kustutamiseks .ee registrist / Application for approval for deletion of %{domain_name} forced: subject: >- diff --git a/test/mailers/domain_delete_mailer_test.rb b/test/mailers/domain_delete_mailer_test.rb index a7a134fed..021768399 100644 --- a/test/mailers/domain_delete_mailer_test.rb +++ b/test/mailers/domain_delete_mailer_test.rb @@ -15,9 +15,9 @@ class DomainDeleteMailerTest < ActiveSupport::TestCase def test_delivers_domain_delete_confirmation_email assert_equal 'shop.test', @domain.name - email = DomainDeleteMailer.confirm(domain: @domain, - registrar: @domain.registrar, - registrant: @domain.registrant).deliver_now + email = DomainDeleteMailer.confirmation(domain: @domain, + registrar: @domain.registrar, + registrant: @domain.registrant).deliver_now assert_emails 1 assert_equal 'Kinnitustaotlus domeeni shop.test kustutamiseks .ee registrist' \ From ee6686cb03dd3ed6205c149ce32ee54a0b2a369b Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Tue, 9 Apr 2019 14:51:52 +0300 Subject: [PATCH 2/6] Reformat --- config/locales/mailers/domain_delete.en.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/config/locales/mailers/domain_delete.en.yml b/config/locales/mailers/domain_delete.en.yml index 5191f4da2..9d709f3bb 100644 --- a/config/locales/mailers/domain_delete.en.yml +++ b/config/locales/mailers/domain_delete.en.yml @@ -1,9 +1,11 @@ en: domain_delete_mailer: confirmation: - subject: Kinnitustaotlus domeeni %{domain_name} kustutamiseks .ee registrist / Application for approval for deletion of %{domain_name} + subject: >- + Kinnitustaotlus domeeni %{domain_name} kustutamiseks .ee registrist + / Application for approval for deletion of %{domain_name} forced: subject: >- Domeen %{domain_name} on kustutusmenetluses / Domain %{domain_name} is in deletion process - / Домен %{domain_name} в процессе удаления + / Домен %{domain_name} в процессе удаления \ No newline at end of file From 1d17c935acb64e183b544424f896dd630ab994f9 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Tue, 9 Apr 2019 14:52:02 +0300 Subject: [PATCH 3/6] Add mailer preview --- test/mailers/previews/domain_delete_mailer_preview.rb | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/test/mailers/previews/domain_delete_mailer_preview.rb b/test/mailers/previews/domain_delete_mailer_preview.rb index 12dbbad69..f8dc0e9ee 100644 --- a/test/mailers/previews/domain_delete_mailer_preview.rb +++ b/test/mailers/previews/domain_delete_mailer_preview.rb @@ -12,4 +12,11 @@ class DomainDeleteMailerPreview < ActionMailer::Preview end define_forced_templates + + def confirmation + domain = Domain.first + DomainDeleteMailer.confirmation(domain: domain, + registrar: domain.registrar, + registrant: domain.registrant) + end end \ No newline at end of file From fe294acd57cd70c70e725cf19327e6bb9747f100 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Tue, 9 Apr 2019 15:01:25 +0300 Subject: [PATCH 4/6] Use template --- .../mailers/domain_delete_mailer/confirmation.html.erb | 9 ++------- .../mailers/domain_delete_mailer/confirmation.text.erb | 6 ++---- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/app/views/mailers/domain_delete_mailer/confirmation.html.erb b/app/views/mailers/domain_delete_mailer/confirmation.html.erb index f6754ff5c..f1d3e0c70 100644 --- a/app/views/mailers/domain_delete_mailer/confirmation.html.erb +++ b/app/views/mailers/domain_delete_mailer/confirmation.html.erb @@ -9,10 +9,7 @@ Muudatuse kinnitamiseks külastage palun allolevat lehekülge, kontrollige uuest

Taotlus on aktiivne <%= Setting.expire_pending_confirmation %> tundi ja lükatakse automaatselt tagasi kui te seda enne ise ei kinnita või tagasi lükka.
<%= link_to @confirmation_url, @confirmation_url %> -

-Lugupidamisega
-Eesti Interneti Sihtasutus -

+<%= render 'mailers/shared/signatures/signature.et.html' %>


Hi, @@ -26,6 +23,4 @@ To confirm the update please visit this website, once again review the data and <%= link_to @confirmation_url, @confirmation_url %>

The application will remain in pending status for <%= Setting.expire_pending_confirmation %> hrs and will be automatically rejected if it is not approved nor rejected before. -

-Best Regards,
-Estonian Internet Foundation +<%= render 'mailers/shared/signatures/signature.en.html' %> diff --git a/app/views/mailers/domain_delete_mailer/confirmation.text.erb b/app/views/mailers/domain_delete_mailer/confirmation.text.erb index b1dddd773..0632a7f99 100644 --- a/app/views/mailers/domain_delete_mailer/confirmation.text.erb +++ b/app/views/mailers/domain_delete_mailer/confirmation.text.erb @@ -9,8 +9,7 @@ Muudatuse kinnitamiseks külastage palun allolevat lehekülge, kontrollige uuest Taotlus on aktiivne <%= Setting.expire_pending_confirmation %> tundi ja lükatakse automaatselt tagasi kui te seda enne ise ei kinnita või tagasi lükka. <%= @confirmation_url %> -Lugupidamisega -Eesti Interneti Sihtasutus +<%= render 'mailers/shared/signatures/signature.et.text' %> -------------------------------------- @@ -25,5 +24,4 @@ To confirm the update please visit this website, once again review the data and The application will remain in pending status for <%= Setting.expire_pending_confirmation %> hrs and will be automatically rejected if it is not approved nor rejected before. -Best Regards, -Estonian Internet Foundation +<%= render 'mailers/shared/signatures/signature.en.text' %> \ No newline at end of file From 4e2ba1f18b7cbd28703346d1c1e15bf95b006ea4 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Tue, 9 Apr 2019 15:04:52 +0300 Subject: [PATCH 5/6] Add tests --- test/mailers/domain_delete_mailer_test.rb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/test/mailers/domain_delete_mailer_test.rb b/test/mailers/domain_delete_mailer_test.rb index 021768399..0efbea486 100644 --- a/test/mailers/domain_delete_mailer_test.rb +++ b/test/mailers/domain_delete_mailer_test.rb @@ -14,18 +14,22 @@ class DomainDeleteMailerTest < ActiveSupport::TestCase def test_delivers_domain_delete_confirmation_email assert_equal 'shop.test', @domain.name + assert_equal 'john@inbox.test', @domain.registrant.email email = DomainDeleteMailer.confirmation(domain: @domain, registrar: @domain.registrar, registrant: @domain.registrant).deliver_now assert_emails 1 + assert_equal ['john@inbox.test'], email.to assert_equal 'Kinnitustaotlus domeeni shop.test kustutamiseks .ee registrist' \ ' / Application for approval for deletion of shop.test', email.subject end def test_delivers_domain_force_delete_email assert_equal 'shop.test', @domain.name + assert_equal 'john@inbox.test', @domain.registrant.email + assert_equal 'jane@mail.test', @domain.admin_contacts.first.email email = DomainDeleteMailer.forced(domain: @domain, registrar: @domain.registrar, @@ -34,6 +38,7 @@ class DomainDeleteMailerTest < ActiveSupport::TestCase .first).deliver_now assert_emails 1 + assert_equal %w[jane@mail.test john@inbox.test], email.to assert_equal 'Domeen shop.test on kustutusmenetluses' \ ' / Domain shop.test is in deletion process' \ ' / Домен shop.test в процессе удаления', email.subject From 2367f2b90cebea015016b35f2a9723870f366700 Mon Sep 17 00:00:00 2001 From: Artur Beljajev Date: Tue, 9 Apr 2019 15:17:19 +0300 Subject: [PATCH 6/6] Remove useless specs --- .../confirm.html.erb_spec.rb | 11 ------ .../confirm.text.erb_spec.rb | 11 ------ .../domain_delete_mailer/confirm_shared.rb | 35 ------------------- 3 files changed, 57 deletions(-) delete mode 100644 spec/views/mailers/domain_delete_mailer/confirm.html.erb_spec.rb delete mode 100644 spec/views/mailers/domain_delete_mailer/confirm.text.erb_spec.rb delete mode 100644 spec/views/mailers/domain_delete_mailer/confirm_shared.rb diff --git a/spec/views/mailers/domain_delete_mailer/confirm.html.erb_spec.rb b/spec/views/mailers/domain_delete_mailer/confirm.html.erb_spec.rb deleted file mode 100644 index 7d7776d0a..000000000 --- a/spec/views/mailers/domain_delete_mailer/confirm.html.erb_spec.rb +++ /dev/null @@ -1,11 +0,0 @@ -require 'rails_helper' -require_relative 'confirm_shared' - -RSpec.describe 'mailers/domain_delete_mailer/confirm.html.erb' do - before :example do - stub_template 'mailers/shared/registrar/_registrar.et.html' => 'test registrar estonian' - stub_template 'mailers/shared/registrar/_registrar.en.html' => 'test registrar english' - end - - include_examples 'domain delete mailer confirm' -end diff --git a/spec/views/mailers/domain_delete_mailer/confirm.text.erb_spec.rb b/spec/views/mailers/domain_delete_mailer/confirm.text.erb_spec.rb deleted file mode 100644 index b5f257b86..000000000 --- a/spec/views/mailers/domain_delete_mailer/confirm.text.erb_spec.rb +++ /dev/null @@ -1,11 +0,0 @@ -require 'rails_helper' -require_relative 'confirm_shared' - -RSpec.describe 'mailers/domain_delete_mailer/confirm.text.erb' do - before :example do - stub_template 'mailers/shared/registrar/_registrar.et.text' => 'test registrar estonian' - stub_template 'mailers/shared/registrar/_registrar.en.text' => 'test registrar english' - end - - include_examples 'domain delete mailer confirm' -end diff --git a/spec/views/mailers/domain_delete_mailer/confirm_shared.rb b/spec/views/mailers/domain_delete_mailer/confirm_shared.rb deleted file mode 100644 index 960e5cf42..000000000 --- a/spec/views/mailers/domain_delete_mailer/confirm_shared.rb +++ /dev/null @@ -1,35 +0,0 @@ -require 'rails_helper' - -RSpec.shared_examples 'domain delete mailer confirm' do - let(:domain) { instance_spy(DomainPresenter) } - let(:lang_count) { 2 } - - before :example do - assign(:domain, domain) - assign(:registrar, nil) - assign(:confirm_url, 'test confirm url') - end - - it 'has registrar info in estonian' do - render - expect(rendered).to have_text('test registrar estonian') - end - - it 'has registrar info in english' do - render - expect(rendered).to have_text('test registrar english') - end - - it 'has domain name' do - mention_count = 1 * lang_count - expect(domain).to receive(:name).exactly(mention_count).times.and_return('test domain name') - render - expect(rendered).to have_text('test domain name', count: mention_count) - end - - it 'has confirm url' do - mention_count = 1 * lang_count - render - expect(rendered).to have_text('test confirm url', count: mention_count) - end -end