test(groupe instructeurs): add test and preview when removing instructeurs
This commit is contained in:
parent
6cbc514d56
commit
22089efa12
2 changed files with 10 additions and 9 deletions
|
@ -1,20 +1,21 @@
|
||||||
RSpec.describe GroupeInstructeurMailer, type: :mailer do
|
RSpec.describe GroupeInstructeurMailer, type: :mailer do
|
||||||
describe '#add_instructeurs' do
|
describe '#remove_instructeurs' do
|
||||||
let(:groupe_instructeur) do
|
let(:groupe_instructeur) do
|
||||||
gi = GroupeInstructeur.create(label: 'gi1', procedure: create(:procedure))
|
gi = GroupeInstructeur.create(label: 'gi1', procedure: create(:procedure))
|
||||||
gi.instructeurs << create(:instructeur, email: 'int1@g')
|
gi.instructeurs << create(:instructeur, email: 'int1@g')
|
||||||
gi.instructeurs << create(:instructeur, email: 'int2@g')
|
gi.instructeurs << create(:instructeur, email: 'int2@g')
|
||||||
|
gi.instructeurs << instructeurs_to_remove
|
||||||
gi
|
gi
|
||||||
end
|
end
|
||||||
let(:instructeur_1) { create(:instructeur) }
|
let(:instructeur_1) { create(:instructeur, email: 'int3@g') }
|
||||||
let(:instructeur_2) { create(:instructeur) }
|
let(:instructeur_2) { create(:instructeur, email: 'int4@g') }
|
||||||
|
|
||||||
let(:instructeurs) { [instructeur_1, instructeur_2] }
|
let(:instructeurs_to_remove) { [instructeur_1, instructeur_2] }
|
||||||
let(:current_instructeur_email) { 'toto@email.com' }
|
let(:current_instructeur_email) { 'toto@email.com' }
|
||||||
|
|
||||||
subject { described_class.add_instructeurs(groupe_instructeur, instructeurs, current_instructeur_email) }
|
subject { described_class.remove_instructeurs(groupe_instructeur, instructeurs_to_remove, current_instructeur_email) }
|
||||||
|
|
||||||
it { expect(subject.body).to include('Bonjour') }
|
it { expect(subject.body).to include('Les instructeurs int3@g, int4@g ont été retirés du groupe') }
|
||||||
it { expect(subject.bcc).to match_array(['int1@g', 'int2@g']) }
|
it { expect(subject.bcc).to match_array(['int1@g', 'int2@g', 'int3@g', 'int4@g']) }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
class GroupeInstructeurMailerPreview < ActionMailer::Preview
|
class GroupeInstructeurMailerPreview < ActionMailer::Preview
|
||||||
def add_instructeurs
|
def remove_instructeurs
|
||||||
procedure = Procedure.new(id: 1, libelle: 'une superbe procedure')
|
procedure = Procedure.new(id: 1, libelle: 'une superbe procedure')
|
||||||
groupe = GroupeInstructeur.new(id: 1, label: 'Val-De-Marne', procedure:)
|
groupe = GroupeInstructeur.new(id: 1, label: 'Val-De-Marne', procedure:)
|
||||||
current_instructeur_email = 'admin@dgfip.com'
|
current_instructeur_email = 'admin@dgfip.com'
|
||||||
instructeurs = Instructeur.limit(2)
|
instructeurs = Instructeur.limit(2)
|
||||||
GroupeInstructeurMailer.add_instructeurs(groupe, instructeurs, current_instructeur_email)
|
GroupeInstructeurMailer.remove_instructeurs(groupe, instructeurs, current_instructeur_email)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue