Refactor domain mailer views

#180
This commit is contained in:
Artur Beljajev 2016-11-14 01:35:47 +02:00
parent a6de3761c5
commit 2c3dbc6e32
31 changed files with 361 additions and 153 deletions

View file

@ -3,9 +3,9 @@ require_relative 'force_delete_shared'
RSpec.describe 'mailers/domain_mailer/force_delete.html.erb' do
before :example do
stub_template 'mailers/domain_mailer/registrar/_registrar.et.html' => 'test registrar estonian'
stub_template 'mailers/domain_mailer/registrar/_registrar.en.html' => 'test registrar english'
stub_template 'mailers/domain_mailer/registrar/_registrar.ru.html' => 'test registrar russian'
stub_template 'mailers/shared/registrar/_registrar.et.html' => 'test registrar estonian'
stub_template 'mailers/shared/registrar/_registrar.en.html' => 'test registrar english'
stub_template 'mailers/shared/registrar/_registrar.ru.html' => 'test registrar russian'
end
include_examples 'domain mailer force delete'

View file

@ -3,9 +3,9 @@ require_relative 'force_delete_shared'
RSpec.describe 'mailers/domain_mailer/force_delete.text.erb' do
before :example do
stub_template 'mailers/domain_mailer/registrar/_registrar.et.text' => 'test registrar estonian'
stub_template 'mailers/domain_mailer/registrar/_registrar.en.text' => 'test registrar english'
stub_template 'mailers/domain_mailer/registrar/_registrar.ru.text' => 'test registrar russian'
stub_template 'mailers/shared/registrar/_registrar.et.text' => 'test registrar estonian'
stub_template 'mailers/shared/registrar/_registrar.en.text' => 'test registrar english'
stub_template 'mailers/shared/registrar/_registrar.ru.text' => 'test registrar russian'
end
include_examples 'domain mailer force delete'

View file

@ -1,7 +1,7 @@
require 'rails_helper'
require_relative 'confirmation_shared'
require_relative 'confirm_shared'
RSpec.describe 'mailers/registrant_change_mailer/confirmation.html.erb' do
RSpec.describe 'mailers/registrant_change_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'
@ -9,5 +9,5 @@ RSpec.describe 'mailers/registrant_change_mailer/confirmation.html.erb' do
stub_template 'mailers/shared/registrant/_registrant.en.html' => 'test new registrant english'
end
include_examples 'domain mailer pending update request for old registrant'
include_examples 'registrant change mailer confirm'
end

View file

@ -1,7 +1,7 @@
require 'rails_helper'
require_relative 'confirmation_shared'
require_relative 'confirm_shared'
RSpec.describe 'mailers/registrant_change_mailer/confirmation.text.erb' do
RSpec.describe 'mailers/registrant_change_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'
@ -9,5 +9,5 @@ RSpec.describe 'mailers/registrant_change_mailer/confirmation.text.erb' do
stub_template 'mailers/shared/registrant/_registrant.en.text' => 'test new registrant english'
end
include_examples 'domain mailer pending update request for old registrant'
include_examples 'registrant change mailer confirm'
end

View file

@ -1,6 +1,6 @@
require 'rails_helper'
RSpec.shared_examples 'domain mailer pending update request for old registrant' do
RSpec.shared_examples 'registrant change mailer confirm' do
let(:domain) { instance_spy(DomainPresenter) }
let(:lang_count) { 2 }
@ -8,7 +8,7 @@ RSpec.shared_examples 'domain mailer pending update request for old registrant'
assign(:domain, domain)
assign(:registrar, nil)
assign(:new_registrant, nil)
assign(:verification_url, 'test verification url')
assign(:confirm_url, 'test confirm url')
end
it 'has registrar info in estonian' do
@ -31,10 +31,10 @@ RSpec.shared_examples 'domain mailer pending update request for old registrant'
expect(rendered).to have_text('test new registrant english')
end
it 'has verification url' do
it 'has confirm url' do
mention_count = 1 * lang_count
render
expect(rendered).to have_text('test verification url', count: mention_count)
expect(rendered).to have_text('test confirm url', count: mention_count)
end
domain_attributes = %i(

View file

@ -0,0 +1,13 @@
require 'rails_helper'
require_relative 'notice_shared'
RSpec.describe 'mailers/registrant_change_mailer/notice.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'
stub_template 'mailers/shared/registrant/_registrant.et.html' => 'test new registrant estonian'
stub_template 'mailers/shared/registrant/_registrant.en.html' => 'test new registrant english'
end
include_examples 'registrant change mailer notice'
end

View file

@ -0,0 +1,13 @@
require 'rails_helper'
require_relative 'notice_shared'
RSpec.describe 'mailers/registrant_change_mailer/notice.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'
stub_template 'mailers/shared/registrant/_registrant.et.text' => 'test new registrant estonian'
stub_template 'mailers/shared/registrant/_registrant.en.text' => 'test new registrant english'
end
include_examples 'registrant change mailer notice'
end

View file

@ -1,13 +1,16 @@
require 'rails_helper'
RSpec.shared_examples 'domain mailer pending update notification for new registrant' do
RSpec.shared_examples 'registrant change mailer notice' do
let(:domain) { instance_spy(DomainPresenter) }
let(:registrar) { instance_spy(RegistrarPresenter) }
let(:registrant) { instance_spy(RegistrantPresenter) }
let(:lang_count) { 2 }
before :example do
assign(:domain, domain)
assign(:registrar, registrar)
assign(:current_registrant, registrant)
assign(:new_registrant, registrant)
end
it 'has registrar info in estonian' do
@ -20,10 +23,14 @@ RSpec.shared_examples 'domain mailer pending update notification for new registr
expect(rendered).to have_text('test registrar english')
end
it 'has registrar name' do
expect(registrar).to receive(:name).and_return('test registrar name')
it 'has new registrant info in estonian' do
render
expect(rendered).to have_text('test registrar name')
expect(rendered).to have_text('test new registrant estonian')
end
it 'has new registrant info in english' do
render
expect(rendered).to have_text('test new registrant english')
end
domain_attributes = %i(

View file

@ -1,6 +0,0 @@
require 'rails_helper'
require_relative 'pending_update_notification_for_new_registrant_shared'
RSpec.describe 'mailers/domain_mailer/pending_update_notification_for_new_registrant.html.erb' do
include_examples 'domain mailer pending update notification for new registrant'
end

View file

@ -1,9 +0,0 @@
require 'rails_helper'
require_relative 'pending_update_notification_for_new_registrant_shared'
RSpec.describe 'mailers/domain_mailer/pending_update_notification_for_new_registrant.text.erb' do
include_examples 'domain mailer pending update notification for new registrant'
end

View file

@ -0,0 +1,11 @@
require 'rails_helper'
require_relative 'rejected_shared'
RSpec.describe 'mailers/registrant_change_mailer/rejected.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 'registrant change mailer rejected'
end

View file

@ -0,0 +1,11 @@
require 'rails_helper'
require_relative 'rejected_shared'
RSpec.describe 'mailers/registrant_change_mailer/rejected.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 'registrant change mailer rejected'
end

View file

@ -0,0 +1,48 @@
require 'rails_helper'
RSpec.shared_examples 'registrant change mailer rejected' do
let(:domain) { instance_spy(DomainPresenter) }
let(:registrar) { instance_spy(RegistrarPresenter) }
let(:registrant) { instance_spy(RegistrantPresenter) }
let(:lang_count) { 2 }
before :example do
assign(:domain, domain)
assign(:registrar, registrar)
assign(:registrant, registrant)
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
domain_attributes = %i(
name
)
domain_attributes.each do |attr_name|
it "has domain #{attr_name}" do
expect(domain).to receive(attr_name).exactly(lang_count).times.and_return("test domain #{attr_name}")
render
expect(rendered).to have_text("test domain #{attr_name}", count: lang_count)
end
end
registrant_attributes = %i(
name
)
registrant_attributes.each do |attr_name|
it "has registrant #{attr_name}" do
expect(registrant).to receive(attr_name).exactly(lang_count).times.and_return("test registrant #{attr_name}")
render
expect(rendered).to have_text("test registrant #{attr_name}", count: lang_count)
end
end
end