Merge branch 'develop' of ssh://37.187.249.111:2200/opt/git/tps into develop

Conflicts:
	app/views/users/recapitulatif/show.html.haml
	spec/features/recapitulatif_page/_commentaires_flux_spec.rb
	spec/features/recapitulatif_page/show_page_spec.rb
This commit is contained in:
Xavier J 2015-09-24 10:56:12 +02:00
commit 8693f4194c
80 changed files with 1414 additions and 382 deletions

View file

@ -3,7 +3,7 @@ require 'spec_helper'
feature 'On the description page' do
let!(:dossier) { create(:dossier, :with_entreprise, :with_procedure) }
before do
visit dossier_description_path dossier
visit users_dossier_description_path dossier
end
scenario 'date_previsionnelle field is present' do
expect(page).to have_css('#date_previsionnelle')

View file

@ -5,12 +5,12 @@ feature 'Description#Show Page' do
let(:dossier_id) { dossier.id }
before do
visit "/dossiers/#{dossier_id}/description"
visit users_dossier_description_path(dossier_id: dossier_id)
end
context 'tous les attributs sont présents sur la page' do
scenario 'Le formulaire envoie vers /dossiers/:dossier_id/description en #POST' do
expect(page).to have_selector("form[action='/dossiers/#{dossier_id}/description'][method=post]")
scenario 'Le formulaire envoie vers /users/dossiers/:dossier_id/description en #POST' do
expect(page).to have_selector("form[action='/users/dossiers/#{dossier_id}/description'][method=post]")
end
scenario 'Nom du projet' do
@ -62,7 +62,7 @@ feature 'Description#Show Page' do
context 'si la page précédente est recapitularif' do
before do
visit "/dossiers/#{dossier_id}/description?back_url=recapitulatif"
visit "/users/dossiers/#{dossier_id}/description?back_url=recapitulatif"
end
scenario 'le bouton "Terminer" n\'est pas présent' do

View file

@ -3,7 +3,7 @@ require 'spec_helper'
feature 'user is on description page' do
let(:dossier) { create(:dossier, :with_entreprise, :with_procedure) }
before do
visit dossier_description_path dossier
visit users_dossier_description_path dossier
end
it { expect(page).to have_css('#description_page') }

View file

@ -0,0 +1,38 @@
require 'spec_helper'
feature '_Commentaires_Flux Recapitulatif#Show Page' do
let(:dossier) { create(:dossier, :with_user, :with_procedure) }
let(:dossier_id) { dossier.id }
let(:email_commentaire) { 'mon_mail_de_commentaire@test.com' }
let!(:commentaire) { create(:commentaire, dossier: dossier, email: email_commentaire, body: 'ma super description') }
let(:body) { 'Commentaire de test' }
before do
login_as(dossier.user, scope: :user)
visit "/users/dossiers/#{dossier_id}/recapitulatif"
end
context 'Affichage du flux de commentaire' do
scenario 'l\'email du contact est présent' do
expect(page).to have_css('#email_contact')
end
scenario 'la date du commentaire est présent' do
expect(page).to have_selector('span[id=created_at]')
end
scenario 'le corps du commentaire est présent' do
expect(page).to have_css('.description#body')
end
end
context 'Affichage du formulaire de commentaire' do
scenario 'Le formulaire envoie vers /dossiers/:dossier_id/commentaire en #POST' do
expect(page).to have_selector("form[action='/users/dossiers/#{dossier_id}/commentaire'][method=post]")
end
scenario 'Champs de texte' do
expect(page).to have_selector('textarea[id=texte_commentaire][name=texte_commentaire]')
end
end
end

View file

@ -1,12 +1,13 @@
require 'spec_helper'
feature 'Recapitulatif#Show Page' do
let(:dossier) { create(:dossier, :with_procedure) }
let(:dossier) { create(:dossier, :with_user, :with_procedure) }
let(:dossier_id) { dossier.id }
before do
Capybara.current_session.driver.header('Referer', '/description')
visit "/dossiers/#{dossier_id}/recapitulatif"
login_as(dossier.user, :scope => :user)
visit "/users/dossiers/#{dossier_id}/recapitulatif"
end
context 'sur la page recapitulative' do
@ -42,14 +43,14 @@ feature 'Recapitulatif#Show Page' do
scenario 'N\'est pas affiché quand l\'on vient d\'une autre la page que description' do
Capybara.current_session.driver.header('Referer', '/')
visit "/dossiers/#{dossier_id}/recapitulatif"
visit "/users/dossiers/#{dossier_id}/recapitulatif"
expect(page).to_not have_content('Félicitation')
end
scenario 'N\'est pas affiché quand l\'on vient de la page description en modification' do
Capybara.current_session.driver.header('Referer', '/description?back_url=recapitulatif')
visit "/dossiers/#{dossier_id}/recapitulatif"
visit "/users/dossiers/#{dossier_id}/recapitulatif"
expect(page).to_not have_content('Félicitation')
end

View file

@ -0,0 +1,63 @@
require 'spec_helper'
feature 'user path for dossier creation' do
let(:user) { create(:user) }
let(:procedure) { create(:procedure) }
let(:siret) { '53272417600013' }
let(:siren) { siret[0...9] }
context 'user arrives on siret page' do
before do
visit users_siret_path(procedure_id: procedure.id)
end
scenario 'he is redirected on login page' do
expect(page).to have_css('#login_user')
end
context 'user sign_in' do
before do
page.find_by_id('user_email').set user.email
page.find_by_id('user_password').set user.password
page.click_on 'Se connecter'
end
scenario 'redirects to siret page' do
expect(page).to have_css('#siret')
end
context 'sets siret' do
before do
stub_request(:get, "https://api-dev.apientreprise.fr/api/v1/etablissements/#{siret}?token=#{SIADETOKEN}")
.to_return(body: File.read('spec/support/files/etablissement.json', status: 200))
stub_request(:get, "https://api-dev.apientreprise.fr/api/v1/entreprises/#{siren}?token=#{SIADETOKEN}")
.to_return(status: 200, body: File.read('spec/support/files/entreprise.json'))
page.find_by_id('siret').set siret
page.click_on 'Commencer'
end
scenario 'user is on page recap info entreprise' do
expect(page).to have_css('#recap_info_entreprise')
end
context 'when validating info entreprise recap page' do
before do
page.check('dossier_autorisation_donnees')
page.click_on 'Etape suivante'
end
scenario 'user is on description page' do
expect(page).to have_css('#description_page')
end
context 'user fill and validate description page' do
before do
page.find_by_id('nom_projet').set 'Mon super projet'
page.find_by_id('description').set 'Ma super description'
page.find_by_id('montant_projet').set 10_000
page.find_by_id('montant_aide_demande').set 1_000
page.find_by_id('date_previsionnelle').set '09/09/2015'
page.click_on 'Terminer la procédure'
end
scenario 'user is on recap page' do
expect(page).to have_css('#recap_dossier')
end
end
end
end
end
end
end

View file

@ -0,0 +1,16 @@
require 'spec_helper'
feature 'user access to the list of his dossier' do
let(:user) { create(:user) }
let!(:dossier1) { create(:dossier) }
before do
visit root_path
page.find_by_id('user_email').set user.email
page.find_by_id('user_password').set user.password
page.click_on 'Se connecter'
end
scenario 'the list of dossier is displayed' do
expect(page).to have_content(dossier1.nom_projet)
end
end

View file

@ -0,0 +1,39 @@
require 'spec_helper'
feature 'user arrive on siret page' do
let(:procedure) { create(:procedure) }
let(:user) { create(:user) }
let(:siret) { '42149333900020' }
let(:siren) { siret[0...9] }
context 'when user is not logged in' do
before do
visit users_siret_path(procedure_id: procedure.id)
end
scenario 'he is redirected to login page' do
expect(page).to have_css('#login_user')
end
context 'when he enter login information' do
before do
page.find_by_id('user_email').set user.email
page.find_by_id('user_password').set user.password
page.click_on 'Se connecter'
end
scenario 'he is redirected to siret page to enter a siret' do
expect(page).to have_css('#pro_section')
end
context 'when enter a siret' do
before do
stub_request(:get, "https://api-dev.apientreprise.fr/api/v1/etablissements/#{siret}?token=#{SIADETOKEN}")
.to_return(status: 200, body: File.read('spec/support/files/etablissement.json'))
stub_request(:get, "https://api-dev.apientreprise.fr/api/v1/entreprises/#{siren}?token=#{SIADETOKEN}")
.to_return(status: 200, body: File.read('spec/support/files/entreprise.json'))
page.find_by_id('siret').set siret
page.click_on 'Commencer'
end
scenario 'he is redirected to recap info entreprise page' do
expect(page).to have_css('#recap_info_entreprise')
end
end
end
end
end