Merge pull request #10483 from colinux/fast-tests
Tech (tests): default administrateur fixtures
This commit is contained in:
commit
eee6e5e651
83 changed files with 490 additions and 378 deletions
|
@ -1,19 +1,19 @@
|
|||
describe Administrateur, type: :model do
|
||||
let(:administration) { create(:administration) }
|
||||
|
||||
describe 'associations' do
|
||||
it { is_expected.to have_many(:commentaire_groupe_gestionnaires) }
|
||||
it { is_expected.to have_many(:archives) }
|
||||
it { is_expected.to have_many(:exports) }
|
||||
it { is_expected.to have_and_belong_to_many(:instructeurs) }
|
||||
it { is_expected.to belong_to(:groupe_gestionnaire).optional }
|
||||
it 'define associations' do
|
||||
is_expected.to have_many(:commentaire_groupe_gestionnaires)
|
||||
is_expected.to have_many(:archives)
|
||||
is_expected.to have_many(:exports)
|
||||
is_expected.to have_and_belong_to_many(:instructeurs)
|
||||
is_expected.to belong_to(:groupe_gestionnaire).optional
|
||||
end
|
||||
|
||||
describe "#can_be_deleted?" do
|
||||
subject { administrateur.can_be_deleted? }
|
||||
|
||||
context "when the administrateur's procedures have other administrateurs" do
|
||||
let!(:administrateur) { create(:administrateur) }
|
||||
let!(:administrateur) { administrateurs(:default_admin) }
|
||||
let!(:autre_administrateur) { create(:administrateur) }
|
||||
let!(:procedure) { create(:procedure, administrateurs: [administrateur, autre_administrateur]) }
|
||||
|
||||
|
@ -21,14 +21,14 @@ describe Administrateur, type: :model do
|
|||
end
|
||||
|
||||
context "when the administrateur has a procedure with dossiers where they is the only admin" do
|
||||
let!(:administrateur) { create(:administrateur) }
|
||||
let!(:administrateur) { administrateurs(:default_admin) }
|
||||
let!(:procedure) { create(:procedure_with_dossiers, administrateurs: [administrateur]) }
|
||||
|
||||
it { is_expected.to be false }
|
||||
end
|
||||
|
||||
context "when the administrateur has a procedure with dossiers and with other admins" do
|
||||
let!(:administrateur) { create(:administrateur) }
|
||||
let!(:administrateur) { administrateurs(:default_admin) }
|
||||
let!(:administrateur2) { create(:administrateur) }
|
||||
let!(:procedure) { create(:procedure_with_dossiers, administrateurs: [administrateur, administrateur2]) }
|
||||
|
||||
|
@ -36,21 +36,21 @@ describe Administrateur, type: :model do
|
|||
end
|
||||
|
||||
context "when the administrateur has a procedure without dossiers" do
|
||||
let!(:administrateur) { create(:administrateur) }
|
||||
let!(:administrateur) { administrateurs(:default_admin) }
|
||||
let!(:procedure) { create(:procedure, administrateurs: [administrateur]) }
|
||||
|
||||
it { is_expected.to be true }
|
||||
end
|
||||
|
||||
context "when the administrateur has no procedure" do
|
||||
let!(:administrateur) { create(:administrateur) }
|
||||
let!(:administrateur) { administrateurs(:default_admin) }
|
||||
|
||||
it { is_expected.to be true }
|
||||
end
|
||||
end
|
||||
|
||||
describe '#merge' do
|
||||
let(:new_admin) { create(:administrateur) }
|
||||
let(:new_admin) { administrateurs(:default_admin) }
|
||||
let(:old_admin) { create(:administrateur) }
|
||||
|
||||
subject { new_admin.merge(old_admin) }
|
||||
|
@ -78,14 +78,7 @@ describe Administrateur, type: :model do
|
|||
end
|
||||
|
||||
context 'when both admins share a procedure' do
|
||||
let(:procedure) { create(:procedure) }
|
||||
|
||||
before do
|
||||
new_admin.procedures << procedure
|
||||
old_admin.procedures << procedure
|
||||
subject
|
||||
[new_admin, old_admin].map(&:reload)
|
||||
end
|
||||
let(:procedure) { create(:procedure, administrateurs: [old_admin, new_admin]) }
|
||||
|
||||
it 'removes the procedure from the old one' do
|
||||
expect(old_admin.procedures).to be_empty
|
||||
|
@ -185,7 +178,7 @@ describe Administrateur, type: :model do
|
|||
describe 'unused' do
|
||||
subject { Administrateur.unused }
|
||||
|
||||
let(:new_admin) { create(:administrateur) }
|
||||
let(:new_admin) { administrateurs(:default_admin) }
|
||||
let(:unused_admin) { create(:administrateur, :with_api_token) }
|
||||
|
||||
before do
|
||||
|
@ -237,7 +230,7 @@ describe Administrateur, type: :model do
|
|||
end
|
||||
|
||||
describe 'zones' do
|
||||
let(:admin) { create(:administrateur) }
|
||||
let(:admin) { administrateurs(:default_admin) }
|
||||
let(:zone1) { create(:zone) }
|
||||
let(:zone2) { create(:zone) }
|
||||
let!(:procedure) { create(:procedure, administrateurs: [admin], zones: [zone1, zone2]) }
|
||||
|
@ -250,7 +243,7 @@ describe Administrateur, type: :model do
|
|||
describe "#unread_commentaires?" do
|
||||
context "commentaire_seen_at is nil" do
|
||||
let(:gestionnaire) { create(:gestionnaire) }
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:groupe_gestionnaire) { create(:groupe_gestionnaire, gestionnaires: [gestionnaire]) }
|
||||
let!(:commentaire_groupe_gestionnaire) { create(:commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire, sender: administrateur, gestionnaire: gestionnaire, created_at: 12.hours.ago) }
|
||||
|
||||
|
@ -285,7 +278,7 @@ describe Administrateur, type: :model do
|
|||
describe "#mark_commentaire_as_seen" do
|
||||
let(:now) { Time.zone.now.beginning_of_minute }
|
||||
let(:gestionnaire) { create(:gestionnaire) }
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:groupe_gestionnaire) { create(:groupe_gestionnaire, gestionnaires: [gestionnaire]) }
|
||||
let!(:commentaire_groupe_gestionnaire) { create(:commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire, sender: administrateur, created_at: 12.hours.ago) }
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
describe APIToken, type: :model do
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
|
||||
describe '#generate' do
|
||||
let(:api_token_and_packed_token) { APIToken.generate(administrateur) }
|
||||
|
@ -59,7 +59,7 @@ describe APIToken, type: :model do
|
|||
end
|
||||
|
||||
context 'but acces to a wrong procedure_id' do
|
||||
let(:forbidden_procedure) { create(:procedure) }
|
||||
let(:forbidden_procedure) { create(:procedure, :new_administrateur) }
|
||||
|
||||
before do
|
||||
api_token.update(allowed_procedure_ids: [forbidden_procedure.id])
|
||||
|
|
|
@ -9,7 +9,7 @@ describe CommentaireGroupeGestionnaire, type: :model do
|
|||
let(:commentaire_groupe_gestionnaire) { create :commentaire_groupe_gestionnaire, sender: sender, gestionnaire: gestionnaire }
|
||||
|
||||
context 'when created by an administrateur' do
|
||||
let(:sender) { create(:administrateur) }
|
||||
let(:sender) { administrateurs(:default_admin) }
|
||||
let(:gestionnaire) { nil }
|
||||
it 'set correctly sender_email and gestionnaire_email' do
|
||||
expect(commentaire_groupe_gestionnaire.sender_email).to eq(sender.email)
|
||||
|
@ -18,7 +18,7 @@ describe CommentaireGroupeGestionnaire, type: :model do
|
|||
end
|
||||
|
||||
context 'when answer by a gestionnaire' do
|
||||
let(:sender) { create(:administrateur) }
|
||||
let(:sender) { administrateurs(:default_admin) }
|
||||
let(:gestionnaire) { create(:gestionnaire) }
|
||||
|
||||
it 'set correctly sender_email and gestionnaire_email' do
|
||||
|
@ -34,7 +34,7 @@ describe CommentaireGroupeGestionnaire, type: :model do
|
|||
let(:commentaire_groupe_gestionnaire) { build :commentaire_groupe_gestionnaire, sender: sender, gestionnaire: gestionnaire }
|
||||
|
||||
context 'with a commentaire_groupe_gestionnaire created by an administrateur deleted by administrateur' do
|
||||
let(:sender) { create(:administrateur) }
|
||||
let(:sender) { administrateurs(:default_admin) }
|
||||
let(:user) { sender }
|
||||
let(:gestionnaire) { nil }
|
||||
|
||||
|
@ -42,7 +42,7 @@ describe CommentaireGroupeGestionnaire, type: :model do
|
|||
end
|
||||
|
||||
context 'with a commentaire_groupe_gestionnaire created by an administrateur deleted by gestionnaire' do
|
||||
let(:sender) { create(:administrateur) }
|
||||
let(:sender) { administrateurs(:default_admin) }
|
||||
let(:user) { create(:gestionnaire) }
|
||||
let(:gestionnaire) { nil }
|
||||
|
||||
|
@ -59,7 +59,7 @@ describe CommentaireGroupeGestionnaire, type: :model do
|
|||
|
||||
context 'with a commentaire_groupe_gestionnaire created by an gestionnaire deleted by administrateur' do
|
||||
let(:sender) { create(:gestionnaire) }
|
||||
let(:user) { create(:administrateur) }
|
||||
let(:user) { administrateurs(:default_admin) }
|
||||
let(:gestionnaire) { sender }
|
||||
|
||||
it { is_expected.to be_falsy }
|
||||
|
@ -72,14 +72,14 @@ describe CommentaireGroupeGestionnaire, type: :model do
|
|||
let(:commentaire_groupe_gestionnaire) { build :commentaire_groupe_gestionnaire, sender: sender }
|
||||
|
||||
context 'with a commentaire_groupe_gestionnaire created by an administrateur so sent by administrateur' do
|
||||
let(:sender) { create(:administrateur) }
|
||||
let(:sender) { administrateurs(:default_admin) }
|
||||
let(:user) { sender }
|
||||
|
||||
it { is_expected.to be_truthy }
|
||||
end
|
||||
|
||||
context 'with a commentaire_groupe_gestionnaire created by an administrateur so not sent by gestionnaire' do
|
||||
let(:sender) { create(:administrateur) }
|
||||
let(:sender) { administrateurs(:default_admin) }
|
||||
let(:user) { create(:gestionnaire) }
|
||||
|
||||
it { is_expected.to be_falsy }
|
||||
|
@ -94,7 +94,7 @@ describe CommentaireGroupeGestionnaire, type: :model do
|
|||
|
||||
context 'with a commentaire_groupe_gestionnaire created by an gestionnaire so not sent by administrateur' do
|
||||
let(:sender) { create(:gestionnaire) }
|
||||
let(:user) { create(:administrateur) }
|
||||
let(:user) { administrateurs(:default_admin) }
|
||||
|
||||
it { is_expected.to be_falsy }
|
||||
end
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
describe InitiationProcedureConcern do
|
||||
describe '.create_initiation_procedure' do
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
subject { Procedure.create_initiation_procedure(administrateur) }
|
||||
|
||||
it "returns a new procedure" do
|
||||
|
|
|
@ -1848,7 +1848,7 @@ describe Dossier, type: :model do
|
|||
end
|
||||
|
||||
describe 'brouillon_expired and en_construction_expired' do
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:user) { administrateur.user }
|
||||
let(:reason) { DeletedDossier.reasons.fetch(:user_request) }
|
||||
|
||||
|
|
|
@ -83,18 +83,18 @@ describe Gestionnaire, type: :model do
|
|||
describe "#unread_commentaires?" do
|
||||
context "over three different groupe_gestionnaire" do
|
||||
let(:gestionnaire) { create(:gestionnaire) }
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:groupe_gestionnaire) { create(:groupe_gestionnaire, gestionnaires: [gestionnaire]) }
|
||||
let!(:commentaire_groupe_gestionnaire) { create(:commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire, sender: administrateur, created_at: 12.hours.ago) }
|
||||
let!(:follow_commentaire_groupe_gestionnaire) { create(:follow_commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire, gestionnaire: gestionnaire, sender: administrateur, commentaire_seen_at: Time.zone.now) }
|
||||
|
||||
let(:gestionnaire_unread_commentaire_cause_never_seen) { create(:gestionnaire) }
|
||||
let(:administrateur_unread_commentaire_cause_never_seen) { create(:administrateur) }
|
||||
let(:administrateur_unread_commentaire_cause_never_seen) { administrateurs(:default_admin) }
|
||||
let(:groupe_gestionnaire_unread_commentaire_cause_never_seen) { create(:groupe_gestionnaire, gestionnaires: [gestionnaire_unread_commentaire_cause_never_seen]) }
|
||||
let!(:commentaire_groupe_gestionnaire_unread_commentaire_cause_never_seen) { create(:commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire_unread_commentaire_cause_never_seen, sender: administrateur_unread_commentaire_cause_never_seen, created_at: 12.hours.ago) }
|
||||
|
||||
let(:gestionnaire_unread_commentaire_cause_seen_at_before_last_commentaire) { create(:gestionnaire) }
|
||||
let(:administrateur_unread_commentaire_cause_seen_at_before_last_commentaire) { create(:administrateur) }
|
||||
let(:administrateur_unread_commentaire_cause_seen_at_before_last_commentaire) { administrateurs(:default_admin) }
|
||||
let(:groupe_gestionnaire_unread_commentaire_cause_seen_at_before_last_commentaire) { create(:groupe_gestionnaire, gestionnaires: [gestionnaire_unread_commentaire_cause_seen_at_before_last_commentaire]) }
|
||||
let!(:commentaire_groupe_gestionnaire_unread_commentaire_cause_seen_at_before_last_commentaire) { create(:commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire_unread_commentaire_cause_seen_at_before_last_commentaire, sender: administrateur_unread_commentaire_cause_seen_at_before_last_commentaire, created_at: 12.hours.ago) }
|
||||
let!(:follow_commentaire_groupe_gestionnaire_unread_commentaire_cause_seen_at_before_last_commentaire) { create(:follow_commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire_unread_commentaire_cause_seen_at_before_last_commentaire, gestionnaire: gestionnaire_unread_commentaire_cause_seen_at_before_last_commentaire, sender: administrateur_unread_commentaire_cause_seen_at_before_last_commentaire, commentaire_seen_at: 1.day.ago) }
|
||||
|
@ -110,7 +110,7 @@ describe Gestionnaire, type: :model do
|
|||
let(:gestionnaire) { create(:gestionnaire) }
|
||||
let(:gestionnaire_unread_commentaire_cause_never_seen) { create(:gestionnaire) }
|
||||
let(:gestionnaire_unread_commentaire_cause_seen_at_before_last_commentaire) { create(:gestionnaire) }
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:groupe_gestionnaire) { create(:groupe_gestionnaire, gestionnaires: [gestionnaire, gestionnaire_unread_commentaire_cause_never_seen, gestionnaire_unread_commentaire_cause_seen_at_before_last_commentaire]) }
|
||||
let!(:commentaire_groupe_gestionnaire) { create(:commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire, sender: administrateur, created_at: 12.hours.ago) }
|
||||
|
||||
|
@ -128,7 +128,7 @@ describe Gestionnaire, type: :model do
|
|||
describe "#commentaire_seen_at" do
|
||||
context "when already seen commentaire" do
|
||||
let(:gestionnaire) { create(:gestionnaire) }
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:groupe_gestionnaire) { create(:groupe_gestionnaire, gestionnaires: [gestionnaire]) }
|
||||
let!(:commentaire_groupe_gestionnaire) { create(:commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire, sender: administrateur, created_at: 12.hours.ago) }
|
||||
let!(:follow_commentaire_groupe_gestionnaire) { create(:follow_commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire, gestionnaire: gestionnaire, sender: administrateur, commentaire_seen_at: Time.zone.now) }
|
||||
|
@ -138,7 +138,7 @@ describe Gestionnaire, type: :model do
|
|||
|
||||
context "when never seen commentaire" do
|
||||
let(:gestionnaire) { create(:gestionnaire) }
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:groupe_gestionnaire) { create(:groupe_gestionnaire, gestionnaires: [gestionnaire]) }
|
||||
let!(:commentaire_groupe_gestionnaire) { create(:commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire, sender: administrateur, created_at: 12.hours.ago) }
|
||||
|
||||
|
@ -150,7 +150,7 @@ describe Gestionnaire, type: :model do
|
|||
context "when already seen commentaire" do
|
||||
let(:now) { Time.zone.now.beginning_of_minute }
|
||||
let(:gestionnaire) { create(:gestionnaire) }
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:groupe_gestionnaire) { create(:groupe_gestionnaire, gestionnaires: [gestionnaire]) }
|
||||
let!(:commentaire_groupe_gestionnaire) { create(:commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire, sender: administrateur, created_at: 12.hours.ago) }
|
||||
let!(:follow_commentaire_groupe_gestionnaire) { create(:follow_commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire, gestionnaire: gestionnaire, sender: administrateur, commentaire_seen_at: 12.hours.ago) }
|
||||
|
@ -170,7 +170,7 @@ describe Gestionnaire, type: :model do
|
|||
context "when never seen commentaire" do
|
||||
let(:now) { Time.zone.now.beginning_of_minute }
|
||||
let(:gestionnaire) { create(:gestionnaire) }
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:groupe_gestionnaire) { create(:groupe_gestionnaire, gestionnaires: [gestionnaire]) }
|
||||
let!(:commentaire_groupe_gestionnaire) { create(:commentaire_groupe_gestionnaire, groupe_gestionnaire: groupe_gestionnaire, sender: administrateur, created_at: 12.hours.ago) }
|
||||
|
||||
|
|
|
@ -21,7 +21,7 @@ describe GroupeGestionnaire, type: :model do
|
|||
describe "#add_administrateur" do
|
||||
let(:groupe_gestionnaire) { create(:groupe_gestionnaire) }
|
||||
let(:gestionnaire) { create(:gestionnaire) }
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
|
||||
subject { groupe_gestionnaire.add_administrateur(administrateur) }
|
||||
|
||||
|
|
|
@ -554,7 +554,7 @@ describe Instructeur, type: :model do
|
|||
subject { instructeur.can_be_deleted? }
|
||||
|
||||
context 'when the instructeur is an administrateur' do
|
||||
let!(:administrateur) { create(:administrateur) }
|
||||
let!(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:instructeur) { administrateur.instructeur }
|
||||
|
||||
it { is_expected.to be false }
|
||||
|
@ -817,7 +817,7 @@ describe Instructeur, type: :model do
|
|||
end
|
||||
|
||||
context 'when the old instructeur is on on admin list' do
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
|
||||
before do
|
||||
administrateur.instructeurs << old_instructeur
|
||||
|
@ -830,7 +830,7 @@ describe Instructeur, type: :model do
|
|||
end
|
||||
|
||||
context 'when both are on the same admin list' do
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
|
||||
before do
|
||||
administrateur.instructeurs << old_instructeur
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
describe Service, type: :model do
|
||||
describe 'validation' do
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:params) do
|
||||
{
|
||||
nom: 'service des jardins',
|
||||
|
|
|
@ -122,7 +122,7 @@ describe User, type: :model do
|
|||
end
|
||||
|
||||
context 'with an administrateur' do
|
||||
let(:admins) { [create(:administrateur)] }
|
||||
let(:admins) { [administrateurs(:default_admin)] }
|
||||
|
||||
it do
|
||||
user = subject
|
||||
|
@ -141,7 +141,7 @@ describe User, type: :model do
|
|||
end
|
||||
|
||||
context 'with an existing instructeur' do
|
||||
let(:old_admins) { [create(:administrateur)] }
|
||||
let(:old_admins) { [administrateurs(:default_admin)] }
|
||||
let(:admins) { [create(:administrateur)] }
|
||||
let!(:instructeur) { create(:instructeur, email: 'i@mail.com', administrateurs: old_admins) }
|
||||
|
||||
|
@ -237,7 +237,7 @@ describe User, type: :model do
|
|||
|
||||
describe 'invite_administrateur!' do
|
||||
let(:super_admin) { create(:super_admin) }
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:user) { administrateur.user }
|
||||
|
||||
let(:mailer_double) { double('mailer', deliver_later: true) }
|
||||
|
@ -284,7 +284,7 @@ describe User, type: :model do
|
|||
|
||||
describe '#can_be_deleted?' do
|
||||
let(:user) { create(:user) }
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:administrateur) { administrateurs(:default_admin) }
|
||||
let(:instructeur) { create(:instructeur) }
|
||||
let(:expert) { create(:expert) }
|
||||
|
||||
|
@ -383,7 +383,7 @@ describe User, type: :model do
|
|||
|
||||
it { expect { subject }.not_to raise_error }
|
||||
it { expect { subject }.to change { FranceConnectInformation.count }.from(2).to(0) }
|
||||
it { expect { subject }.to change { User.count }.from(1).to(0) }
|
||||
it { expect { subject }.to change { User.count }.by(-1) }
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue