2019-08-06 11:02:54 +02:00
describe 'instructeurs/dossiers/show.html.haml' , type : :view do
let ( :current_instructeur ) { create ( :instructeur ) }
2018-09-25 15:56:18 +02:00
let ( :dossier ) { create ( :dossier , :en_construction ) }
2017-07-11 16:50:29 +02:00
before do
2019-08-07 11:15:16 +02:00
sign_in ( current_instructeur . user )
2019-08-08 17:36:08 +02:00
allow ( view ) . to receive ( :current_instructeur ) . and_return ( current_instructeur )
2017-07-11 16:50:29 +02:00
assign ( :dossier , dossier )
end
2018-09-25 15:56:18 +02:00
subject! { render }
2017-07-11 16:50:29 +02:00
2018-09-25 15:56:18 +02:00
it 'renders the header' do
2018-10-08 18:44:19 +02:00
expect ( rendered ) . to have_text ( " Dossier nº #{ dossier . id } " )
2017-07-11 16:50:29 +02:00
end
2018-09-25 15:56:18 +02:00
it 'renders the dossier infos' do
expect ( rendered ) . to have_text ( 'Identité' )
expect ( rendered ) . to have_text ( 'Demande' )
2017-07-11 16:50:29 +02:00
end
2020-11-02 11:37:21 +01:00
context 'when the user is logged in with france connect' do
let ( :france_connect_information ) { build ( :france_connect_information ) }
let ( :user ) { build ( :user , france_connect_information : france_connect_information ) }
let ( :procedure1 ) { create ( :procedure , :with_type_de_champ , for_individual : true ) }
let ( :dossier ) { create ( :dossier , procedure : procedure1 , user : user ) }
before do
render
end
it 'fills the individual with the informations from France Connect' do
2022-09-14 16:19:14 +02:00
expect ( view . content_for ( :notice_info ) ) . to have_text ( " Le dossier a été déposé par le compte de #{ france_connect_information . given_name } #{ france_connect_information . family_name } , authentifié par FranceConnect le #{ france_connect_information . updated_at . strftime ( '%d/%m/%Y' ) } " )
2020-11-02 11:37:21 +01:00
end
end
2022-09-21 15:17:44 +02:00
describe 'entreprise degraded mode' do
context 'etablissement complete' do
let ( :dossier ) { create ( :dossier , :en_construction , :with_entreprise , as_degraded_mode : false ) }
it 'contains no warning' do
expect ( rendered ) . not_to have_text ( " Les services de l’ INSEE sont indisponibles " )
end
end
context 'etablissement in degraded mode' do
let ( :dossier ) { create ( :dossier , :en_construction , :with_entreprise , as_degraded_mode : true ) }
it 'warns the instructeur' do
expect ( rendered ) . to have_text ( " Les services de l’ INSEE sont indisponibles " )
end
end
end
2017-07-11 16:50:29 +02:00
end