Admins can see the list of invited experts
This commit is contained in:
parent
2b06ee95e1
commit
8f6440f615
6 changed files with 95 additions and 2 deletions
|
@ -0,0 +1,41 @@
|
|||
describe 'new_administrateur/procedures/invited_expert_list.html.haml', type: :view do
|
||||
let!(:procedure) { create(:procedure, :published) }
|
||||
|
||||
before do
|
||||
assign(:procedure, procedure)
|
||||
assign(:procedure_lien, commencer_url(path: procedure.path))
|
||||
allow(view).to receive(:current_administrateur).and_return(procedure.administrateurs.first)
|
||||
end
|
||||
|
||||
subject { render }
|
||||
|
||||
context 'when the procedure has 0 avis' do
|
||||
let!(:dossier) { create(:dossier, procedure: procedure) }
|
||||
before do
|
||||
@invited_expert_emails = Avis.invited_expert_emails(procedure)
|
||||
subject
|
||||
end
|
||||
|
||||
it 'has 0 experts into the page' do
|
||||
expect(@invited_expert_emails.count).to eq(0)
|
||||
expect(@invited_expert_emails).to eq([])
|
||||
end
|
||||
end
|
||||
|
||||
context 'when the procedure has 3 avis from 2 experts and 1 unasigned' do
|
||||
let!(:dossier) { create(:dossier, procedure: procedure) }
|
||||
let!(:avis) { create(:avis, dossier: dossier, instructeur: create(:instructeur, email: '1_expert@expert.com')) }
|
||||
let!(:avis2) { create(:avis, dossier: dossier, instructeur: create(:instructeur, email: '2_expert@expert.com')) }
|
||||
let!(:unasigned_avis) { create(:avis, dossier: dossier, email: 'expert@expert.com') }
|
||||
|
||||
before do
|
||||
@invited_expert_emails = Avis.invited_expert_emails(procedure)
|
||||
subject
|
||||
end
|
||||
|
||||
it 'has 3 experts and match array' do
|
||||
expect(@invited_expert_emails.count).to eq(3)
|
||||
expect(@invited_expert_emails).to eq(['1_expert@expert.com', '2_expert@expert.com', 'expert@expert.com'])
|
||||
end
|
||||
end
|
||||
end
|
|
@ -44,13 +44,35 @@ describe 'new_administrateur/procedures/show.html.haml', type: :view do
|
|||
procedure.publish!
|
||||
procedure.close!
|
||||
procedure.reload
|
||||
render
|
||||
end
|
||||
|
||||
describe 'Re-enable button is visible' do
|
||||
before do
|
||||
render
|
||||
end
|
||||
|
||||
it { expect(rendered).not_to have_css('#close-procedure-link') }
|
||||
it { expect(rendered).to have_css('#publish-procedure-link') }
|
||||
it { expect(rendered).to have_content('Réactiver') }
|
||||
end
|
||||
|
||||
describe 'When procedure.allow_expert_review is true, the expert list card must be visible' do
|
||||
before do
|
||||
render
|
||||
end
|
||||
it { expect(procedure.allow_expert_review).to be_truthy }
|
||||
it { expect(rendered).to have_content('Liste des experts invités par les instructeurs') }
|
||||
end
|
||||
|
||||
describe 'When procedure.allow_expert_review is false, the expert list card must not be visible' do
|
||||
before do
|
||||
procedure.update!(allow_expert_review: false)
|
||||
procedure.reload
|
||||
render
|
||||
end
|
||||
|
||||
it { expect(procedure.allow_expert_review).to be_falsy }
|
||||
it { expect(rendered).not_to have_content('Liste des experts invités par les instructeurs') }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue