add message when path is already taken when publishing a procedure
This commit is contained in:
parent
5f826cfd88
commit
e757eefd37
12 changed files with 70 additions and 15 deletions
|
@ -52,7 +52,10 @@ describe 'As an administrateur I wanna clone a procedure', js: true do
|
|||
|
||||
# then publish
|
||||
find('#publish-procedure-link').click
|
||||
expect(find_field('procedure_path').value).to eq 'libelle-de-la-procedure'
|
||||
expect(find_field('procedure_path').value).to eq 'libelle-de-la-procedure-2'
|
||||
fill_in 'procedure_path', with: 'libelle-de-la-procedure'
|
||||
expect(page).to have_content 'Si vous publiez cette démarche, l’ancienne sera dépubliée et ne sera plus accessible au public.'
|
||||
|
||||
fill_in 'lien_site_web', with: 'http://some.website'
|
||||
click_on 'publish'
|
||||
|
||||
|
@ -87,7 +90,9 @@ describe 'As an administrateur I wanna clone a procedure', js: true do
|
|||
|
||||
# then publish
|
||||
find('#publish-procedure-link').click
|
||||
expect(find_field('procedure_path').value).to eq 'libelle-de-la-procedure'
|
||||
expect(find_field('procedure_path').value).to eq 'libelle-de-la-procedure-2'
|
||||
fill_in 'procedure_path', with: 'libelle-de-la-procedure'
|
||||
expect(page).to have_content 'Si vous publiez cette démarche, l’ancienne sera dépubliée et ne sera plus accessible au public.'
|
||||
fill_in 'lien_site_web', with: 'http://some.website'
|
||||
click_on 'publish'
|
||||
|
||||
|
|
|
@ -4,6 +4,8 @@ describe 'Publishing a procedure', js: true do
|
|||
include ProcedureSpecHelper
|
||||
|
||||
let(:administrateur) { create(:administrateur) }
|
||||
let(:other_administrateur) { create(:administrateur) }
|
||||
|
||||
let(:instructeurs) { [administrateur.user.instructeur] }
|
||||
let!(:procedure) do
|
||||
create(:procedure_with_dossiers,
|
||||
|
@ -14,6 +16,16 @@ describe 'Publishing a procedure', js: true do
|
|||
instructeurs: instructeurs,
|
||||
administrateur: administrateur)
|
||||
end
|
||||
let!(:other_procedure) do
|
||||
create(:procedure_with_dossiers,
|
||||
:published,
|
||||
:with_path,
|
||||
:with_type_de_champ,
|
||||
:with_service,
|
||||
:with_zone,
|
||||
instructeurs: instructeurs,
|
||||
administrateur: other_administrateur)
|
||||
end
|
||||
|
||||
before do
|
||||
login_as administrateur.user, scope: :user
|
||||
|
@ -70,6 +82,19 @@ describe 'Publishing a procedure', js: true do
|
|||
expect(page).to have_button('Publier', disabled: true)
|
||||
end
|
||||
end
|
||||
|
||||
context 'when the procedure has the same path as another procedure from another admin ' do
|
||||
scenario 'an error message prevents the publication' do
|
||||
expect(find_field('procedure_path').value).to eq procedure.path
|
||||
fill_in 'procedure_path', with: other_procedure.path
|
||||
expect(page).to have_content 'vous devez la modifier afin de pouvoir publier votre démarche'
|
||||
|
||||
fill_in 'lien_site_web', with: 'http://some.website'
|
||||
within('form') { click_on 'Publier' }
|
||||
|
||||
expect(page).to have_text('Le champ « Lien public » est déjà utilisé par une démarche.')
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
context 'when a procedure is closed' do
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue