demarches-normaliennes/spec/views/layouts/procedure_context.html.haml_spec.rb
Paul Chavard 3b6528decf feat(i18n): enable localization by query param
Providing a query param ("locale") will enable localization. A language picker will be shown once
localization is activated. Locale is stored in a cookie "locale".
2021-08-24 12:42:40 +02:00

68 lines
2 KiB
Ruby

describe 'layouts/procedure_context.html.haml', type: :view do
let(:procedure) { create(:simple_procedure, :with_service) }
let(:dossier) { create(:dossier, procedure: procedure) }
before do
allow(view).to receive(:instructeur_signed_in?).and_return(false)
allow(view).to receive(:administrateur_signed_in?).and_return(false)
allow(view).to receive(:localization_enabled?).and_return(false)
end
subject do
render html: 'Column content', layout: 'layouts/procedure_context.html.haml'
end
context 'when a procedure is assigned' do
before do
assign(:procedure, procedure)
end
it 'renders a description of the procedure' do
expect(subject).to have_text(procedure.libelle)
expect(subject).to have_text(procedure.description)
end
it 'renders the inner content' do
expect(subject).to have_text('Column content')
end
it 'renders the procedure footer' do
expect(subject).to have_text(procedure.service.nom)
expect(subject).to have_text(procedure.service.email)
end
end
context 'when a dossier is assigned' do
before do
assign(:dossier, dossier)
end
it 'renders a description of the procedure' do
expect(subject).to have_text(dossier.procedure.libelle)
expect(subject).to have_text(dossier.procedure.description)
end
it 'renders the inner content' do
expect(subject).to have_text('Column content')
end
it 'renders the procedure footer' do
expect(subject).to have_text(dossier.procedure.service.nom)
expect(subject).to have_text(dossier.procedure.service.email)
end
end
context 'when neither procedure or dossier are assigned' do
it 'renders a placeholder for the procedure' do
expect(subject).to have_selector('.no-procedure')
end
it 'renders the inner content' do
expect(subject).to have_text('Column content')
end
it 'renders a generic footer' do
expect(subject).to have_text('Mentions légales')
end
end
end