Merge branch 'develop' into refactor_type_de_xxx

This commit is contained in:
Tanguy PATTE 2015-11-16 17:09:54 +01:00
commit 0f73a2fc94
16 changed files with 89 additions and 38 deletions

View file

@ -20,7 +20,9 @@ feature 'when gestionnaire come to /backoffice and is not authenticated' do
end
end
context 'when user enter good credentials' do
let(:gestionnaire) { create(:gestionnaire) }
let(:administrateur) { create(:administrateur) }
let(:gestionnaire) { create(:gestionnaire, administrateur: administrateur) }
before do
page.find_by_id(:gestionnaire_email).set gestionnaire.email
page.find_by_id(:gestionnaire_password).set gestionnaire.password

View file

@ -1,16 +1,18 @@
require 'spec_helper'
feature 'on backoffice page' do
let(:procedure) { create(:procedure) }
let(:administrateur) { create(:administrateur) }
let(:gestionnaire) { create(:gestionnaire, administrateur: administrateur) }
let(:procedure) { create(:procedure, administrateur: administrateur) }
let!(:dossier) { create(:dossier, :with_user, :with_entreprise, procedure: procedure, state: 'replied') }
before do
visit backoffice_path
end
context 'when gestionnaire is logged in' do
let(:gestionnaire) { create(:gestionnaire) }
before do
page.find_by_id(:gestionnaire_email).set gestionnaire.email
page.find_by_id(:gestionnaire_password).set gestionnaire.password
page.find_by_id(:gestionnaire_email).set gestionnaire.email
page.find_by_id(:gestionnaire_password).set gestionnaire.password
page.click_on 'Se connecter'
end
context 'when he click on first dossier' do

View file

@ -15,4 +15,10 @@ describe Administrateur, type: :model do
it { is_expected.to have_db_column(:created_at) }
it { is_expected.to have_db_column(:updated_at) }
end
describe 'assocations' do
it { is_expected.to have_many(:gestionnaires) }
it { is_expected.to have_many(:procedures) }
end
end

View file

@ -381,29 +381,38 @@ describe Dossier do
end
context 'gestionnaire backoffice methods' do
let!(:dossier1) { create(:dossier, :with_user, :with_procedure, state: 'draft')}
let!(:dossier2) { create(:dossier, :with_user, :with_procedure, state: 'initiated')}
let!(:dossier3) { create(:dossier, :with_user, :with_procedure, state: 'initiated')}
let!(:dossier4) { create(:dossier, :with_user, :with_procedure, state: 'replied')}
let!(:dossier5) { create(:dossier, :with_user, :with_procedure, state: 'updated')}
let!(:dossier6) { create(:dossier, :with_user, :with_procedure, state: 'validated')}
let!(:dossier7) { create(:dossier, :with_user, :with_procedure, state: 'submitted')}
let!(:dossier8) { create(:dossier, :with_user, :with_procedure, state: 'closed')}
let(:admin) { create(:administrateur) }
let(:admin_2) { create(:administrateur) }
let(:gestionnaire) { create(:gestionnaire, administrateur: admin) }
let(:procedure_admin) { create(:procedure, administrateur: admin) }
let(:procedure_admin_2) { create(:procedure, administrateur: admin_2) }
let!(:dossier1) { create(:dossier, :with_user, procedure: procedure_admin, state: 'draft')}
let!(:dossier2) { create(:dossier, :with_user, procedure: procedure_admin, state: 'initiated')} #a_traiter
let!(:dossier3) { create(:dossier, :with_user, procedure: procedure_admin, state: 'initiated')} #a_traiter
let!(:dossier4) { create(:dossier, :with_user, procedure: procedure_admin, state: 'replied')} #en_attente
let!(:dossier5) { create(:dossier, :with_user, procedure: procedure_admin, state: 'updated')} #a_traiter
let!(:dossier6) { create(:dossier, :with_user, procedure: procedure_admin_2, state: 'validated')} #en_attente
let!(:dossier7) { create(:dossier, :with_user, procedure: procedure_admin_2, state: 'submitted')} #a_traiter
let!(:dossier8) { create(:dossier, :with_user, procedure: procedure_admin_2, state: 'closed')} #termine
let!(:dossier9) { create(:dossier, :with_user, procedure: procedure_admin, state: 'closed')} #termine
describe '#a_traiter' do
subject { described_class.a_traiter }
subject { described_class.a_traiter gestionnaire }
it { expect(subject.size).to eq(4) }
it { expect(subject.size).to eq(3) }
end
describe '#en_attente' do
subject { described_class.en_attente }
subject { described_class.en_attente gestionnaire }
it { expect(subject.size).to eq(2) }
it { expect(subject.size).to eq(1) }
end
describe '#termine' do
subject { described_class.termine }
subject { described_class.termine gestionnaire }
it { expect(subject.size).to eq(1) }
end

View file

@ -1,7 +1,6 @@
require 'rails_helper'
describe Gestionnaire, type: :model do
describe 'database column' do
it { is_expected.to have_db_column(:email) }
it { is_expected.to have_db_column(:encrypted_password) }
@ -16,4 +15,8 @@ describe Gestionnaire, type: :model do
it { is_expected.to have_db_column(:created_at) }
it { is_expected.to have_db_column(:updated_at) }
end
describe 'association' do
it { is_expected.to belong_to(:administrateur) }
end
end

View file

@ -5,6 +5,8 @@ describe Procedure do
it { is_expected.to have_many(:types_de_piece_justificative) }
it { is_expected.to have_many(:types_de_champ) }
it { is_expected.to have_many(:dossiers) }
it { is_expected.to belong_to(:administrateur) }
end
describe 'attributes' do

View file

@ -1,16 +1,21 @@
require 'spec_helper'
describe 'backoffice/index.html.haml', type: :view do
let!(:procedure) { create(:procedure) }
let(:administrateur) { create(:administrateur) }
let(:gestionnaire) { create(:gestionnaire, administrateur: administrateur) }
let!(:procedure) { create(:procedure, administrateur: administrateur) }
let!(:decorate_dossier) { create(:dossier, :with_user, procedure: procedure).decorate }
before do
assign(:dossiers_a_traiter, Dossier.a_traiter.decorate)
assign(:dossiers_en_attente, Dossier.en_attente.decorate)
assign(:dossiers_termine, Dossier.termine.decorate)
assign(:dossiers_a_traiter, Dossier.a_traiter(gestionnaire).decorate)
assign(:dossiers_en_attente, Dossier.en_attente(gestionnaire).decorate)
assign(:dossiers_termine, Dossier.termine(gestionnaire).decorate)
decorate_dossier.initiated!
render
end
subject { rendered }
it { is_expected.to have_css('#backoffice') }
it { is_expected.to have_content(procedure.libelle) }