Merge pull request #2485 from betagouv/instructeur

accompagnateur → instructeur
This commit is contained in:
Paul Chavard 2018-08-30 11:22:51 +01:00 committed by GitHub
commit 5339ee43f5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
41 changed files with 151 additions and 151 deletions

View file

@ -23,7 +23,7 @@ class Admin::GestionnairesController < AdminController
end
if procedure_id.present?
redirect_to admin_procedure_accompagnateurs_path(procedure_id: procedure_id)
redirect_to admin_procedure_instructeurs_path(procedure_id: procedure_id)
else
redirect_to admin_gestionnaires_path
end
@ -54,7 +54,7 @@ class Admin::GestionnairesController < AdminController
else
User.create(email: email, password: password, confirmed_at: DateTime.now)
end
flash.notice = 'Accompagnateur ajouté'
flash.notice = 'Instructeur ajouté'
else
flash.alert = @gestionnaire.errors.full_messages
end
@ -62,10 +62,10 @@ class Admin::GestionnairesController < AdminController
def assign_gestionnaire!
if current_administrateur.gestionnaires.include? @gestionnaire
flash.alert = 'Accompagnateur déjà ajouté'
flash.alert = 'Instructeur déjà ajouté'
else
@gestionnaire.administrateurs.push current_administrateur
flash.notice = 'Accompagnateur ajouté'
flash.notice = 'Instructeur ajouté'
# TODO Mailer no assign_to
end
end

View file

@ -1,4 +1,4 @@
class Admin::AccompagnateursController < AdminController
class Admin::InstructeursController < AdminController
include SmartListing::Helper::ControllerExtensions
helper SmartListing::Helper
@ -10,42 +10,42 @@ class Admin::AccompagnateursController < AdminController
def show
assign_scope = @procedure.gestionnaires
@accompagnateurs_assign = smart_listing_create :accompagnateurs_assign,
@instructeurs_assign = smart_listing_create :instructeurs_assign,
assign_scope,
partial: "admin/accompagnateurs/list_assign",
partial: "admin/instructeurs/list_assign",
array: true
not_assign_scope = current_administrateur.gestionnaires.where.not(id: assign_scope.ids)
not_assign_scope = not_assign_scope.where("email LIKE ?", "%#{params[:filter]}%") if params[:filter]
@accompagnateurs_not_assign = smart_listing_create :accompagnateurs_not_assign,
@instructeurs_not_assign = smart_listing_create :instructeurs_not_assign,
not_assign_scope,
partial: "admin/accompagnateurs/list_not_assign",
partial: "admin/instructeurs/list_not_assign",
array: true
@gestionnaire ||= Gestionnaire.new
end
def update
gestionnaire = Gestionnaire.find(params[:accompagnateur_id])
gestionnaire = Gestionnaire.find(params[:instructeur_id])
procedure = Procedure.find(params[:procedure_id])
to = params[:to]
case to
when ASSIGN
if gestionnaire.assign_to_procedure(procedure)
flash.notice = "L'accompagnateur a bien été affecté"
flash.notice = "L'instructeur a bien été affecté"
else
flash.alert = "L'accompagnateur a déjà été affecté"
flash.alert = "L'instructeur a déjà été affecté"
end
when NOT_ASSIGN
if gestionnaire.remove_from_procedure(procedure)
flash.notice = "L'accompagnateur a bien été désaffecté"
flash.notice = "L'instructeur a bien été désaffecté"
else
flash.alert = "L'accompagnateur a déjà été désaffecté"
flash.alert = "L'instructeur a déjà été désaffecté"
end
end
redirect_to admin_procedure_accompagnateurs_path, procedure_id: params[:procedure_id]
redirect_to admin_procedure_instructeurs_path, procedure_id: params[:procedure_id]
end
end

View file

@ -5,7 +5,7 @@ class Gestionnaires::ActivateController < ApplicationController
@gestionnaire = Gestionnaire.with_reset_password_token(params[:token])
if !@gestionnaire
flash.alert = "Le lien de validation du compte accompagnateur a expiré, #{view_context.contact_link('contactez-nous', tags: 'lien expiré')} pour obtenir un nouveau lien."
flash.alert = "Le lien de validation du compte instructeur a expiré, #{view_context.contact_link('contactez-nous', tags: 'lien expiré')} pour obtenir un nouveau lien."
redirect_to root_path
end
end

View file

@ -31,13 +31,13 @@ module NewGestionnaire
end
def personnes_impliquees
@following_accompagnateurs_emails = dossier.followers_gestionnaires.pluck(:email)
@following_instructeurs_emails = dossier.followers_gestionnaires.pluck(:email)
@avis_emails = dossier.avis.includes(:gestionnaire).map(&:email_to_display)
@invites_emails = dossier.invites.map(&:email)
@potential_recipients = procedure.gestionnaires.reject { |g| g == current_gestionnaire }
end
def envoyer_a_accompagnateur
def envoyer_a_instructeur
recipient = Gestionnaire.find(params[:recipient])
GestionnaireMailer.send_dossier(current_gestionnaire, dossier, recipient).deliver_later
flash.notice = "Dossier envoyé"

View file

@ -4,7 +4,7 @@ class GestionnaireMailer < ApplicationMailer
def invite_gestionnaire(gestionnaire, reset_password_token)
@reset_password_token = reset_password_token
@gestionnaire = gestionnaire
subject = "Activez votre compte accompagnateur"
subject = "Activez votre compte instructeur"
mail(to: gestionnaire.email,
subject: subject,
@ -13,7 +13,7 @@ class GestionnaireMailer < ApplicationMailer
def user_to_gestionnaire(email)
@email = email
subject = "Vous avez été nommé accompagnateur"
subject = "Vous avez été nommé instructeur"
mail(to: @email, subject: subject)
end

View file

@ -10,7 +10,7 @@ class DossierSerializer < ActiveModel::Serializer
:received_at,
:processed_at,
:motivation,
:accompagnateurs,
:instructeurs,
:invites
has_one :individual
@ -71,7 +71,7 @@ class DossierSerializer < ActiveModel::Serializer
object.en_instruction_at
end
def accompagnateurs
def instructeurs
object.followers_gestionnaires.pluck(:email)
end

View file

@ -10,7 +10,7 @@ class DossierTableExportSerializer < ActiveModel::Serializer
:processed_at,
:motivation
attribute :emails_accompagnateurs
attribute :emails_instructeurs
attributes :individual_gender,
:individual_prenom,
@ -62,7 +62,7 @@ class DossierTableExportSerializer < ActiveModel::Serializer
object.individual&.gender
end
def emails_accompagnateurs
def emails_instructeurs
object.followers_gestionnaires.pluck(:email).join(' ')
end
end

View file

@ -1,3 +0,0 @@
<%= smart_listing_update :accompagnateurs_not_assign %>
<%= smart_listing_update :accompagnateurs_assign %>

View file

@ -19,4 +19,4 @@
- else
%h4.center
Aucun accompagnateur
Aucun instructeur

View file

@ -1,10 +1,10 @@
%h1 Accompagnateurs disponibles
%h1 instructeurs disponibles
%p
Cette page vous permet de gérer la liste des accompagnateurs disponibles pour être affectés à une procédure.
Cette page vous permet de gérer la liste des instructeurs disponibles pour être affectés à une procédure.
%p{ style: 'font-style: italic' }
N.B. : cette page ne concerne que la liste des personnes disponibles. Si vous souhaitez affecter ou enlever un accompagnateur d'une procédure particulière,
N.B. : cette page ne concerne que la liste des personnes disponibles. Si vous souhaitez affecter ou enlever un instructeur d'une procédure particulière,
utilisez plutôt la
= link_to "page de la procédure", admin_procedures_path
concernée.
@ -16,7 +16,7 @@
.col-xs-1
&nbsp;
.col-xs-6
%h3 Ajouter un accompagnateur
%h3 Ajouter un instructeur
#procedure_new.section.section-label
= form_for @gestionnaire, url: { controller: 'admin/gestionnaires', action: :create } do |f|
.row

View file

@ -6,12 +6,12 @@
%th Enlever
%th#email{ style: 'text-align: right;' } Email
- @accompagnateurs_assign.each do |accompagnateur|
- @instructeurs_assign.each do |instructeur|
%tr
%td.col-md-1.col-lg-1.col-sm-1.col-xs-1.col-sm-1.col-xs-1.center
= link_to "#{admin_procedure_accompagnateurs_path(procedure_id: @procedure.id, accompagnateur_id: accompagnateur.id, to: Admin::AccompagnateursController::NOT_ASSIGN)}", class: "btn btn-primary", 'data-method' => 'put' do
= link_to "#{admin_procedure_instructeurs_path(procedure_id: @procedure.id, instructeur_id: instructeur.id, to: Admin::InstructeursController::NOT_ASSIGN)}", class: "btn btn-primary", 'data-method' => 'put' do
.fa.fa-arrow-left
%td{ style: 'padding-top: 11px; font-size: 15px; text-align: right;' }= accompagnateur.email
%td{ style: 'padding-top: 11px; font-size: 15px; text-align: right;' }= instructeur.email
= smart_listing.paginate
= smart_listing.pagination_per_page_links

View file

@ -1,4 +1,4 @@
= smart_listing_controls_for(:accompagnateurs_not_assign, { class: "form-inline text-right" }) do
= smart_listing_controls_for(:instructeurs_not_assign, { class: "form-inline text-right" }) do
.form-group.filter.input-append
= text_field_tag :filter, '', class: "search form-control",
placeholder: "Recherche...", autocomplete: :off
@ -12,11 +12,11 @@
%th#email Email
%th Ajouter
- @accompagnateurs_not_assign.each do |accompagnateur|
- @instructeurs_not_assign.each do |instructeur|
%tr
%td.col-xs-11{ style: 'padding-top: 11px; font-size: 15px;' }= accompagnateur.email
%td.col-xs-11{ style: 'padding-top: 11px; font-size: 15px;' }= instructeur.email
%td.center
= link_to "#{admin_procedure_accompagnateurs_path(procedure_id: @procedure.id, accompagnateur_id: accompagnateur.id, to: Admin::AccompagnateursController::ASSIGN)}", class: "btn btn-success gestionnaire-affectation", 'data-method' => 'put' do
= link_to "#{admin_procedure_instructeurs_path(procedure_id: @procedure.id, instructeur_id: instructeur.id, to: Admin::InstructeursController::ASSIGN)}", class: "btn btn-success gestionnaire-affectation", 'data-method' => 'put' do
.fa.fa-arrow-right

View file

@ -1,13 +1,13 @@
.row.white-back
#accompagnateur_form
#instructeur_form
.row
.col-xs-6
%h3.text-info Disponibles
= smart_listing_render :accompagnateurs_not_assign
= smart_listing_render :instructeurs_not_assign
%br
%h3
= t('dynamics.admin.procedure.onglet_accompagnateurs.add.title')
= t('dynamics.admin.procedure.onglet_instructeurs.add.title')
#procedure_new.section.section-label
= form_for @gestionnaire, url: { controller: 'admin/gestionnaires', action: :create } do |f|
.row
@ -20,4 +20,4 @@
= f.submit 'Valider', class: 'btn btn-info', style: 'float: left;', id: 'add-gestionnaire-email'
.col-xs-6
%h3.text-success Affectés
= smart_listing_render :accompagnateurs_assign
= smart_listing_render :instructeurs_assign

View file

@ -0,0 +1,3 @@
<%= smart_listing_update :instructeurs_not_assign %>
<%= smart_listing_update :instructeurs_assign %>

View file

@ -8,7 +8,7 @@
- if @procedure.gestionnaires.empty? || @procedure.service.nil?
- missing_elements = []
- if @procedure.gestionnaires.empty?
- missing_elements << 'des accompagnateurs'
- missing_elements << 'des instructeurs'
- if @procedure.service.nil?
- missing_elements << 'un service'
- message = "Affectez #{missing_elements.join(' et ')} à votre procédure."

View file

@ -1,10 +1,10 @@
- content_for(:title, 'Activation de votre compte accompagnateur')
- content_for(:title, 'Activation de votre compte instructeur')
%p
Bonjour,
%p
Vous venez d'être nommé accompagnateur sur demarches-simplifiees.fr.
Vous venez d'être nommé instructeur sur demarches-simplifiees.fr.
%p
Votre compte a été créé pour l'adresse email #{@gestionnaire.email}. Pour lactiver, je vous invite à cliquer sur le lien suivant : 

View file

@ -1,7 +1,7 @@
Bienvenue sur demarches-simplifiees.fr,
\
Vous venez d'être nommé accompagnateur sur demarches-simplifiees.fr.
Votre compte (#{@email}) vous donnera désormais aussi accès à lespace accompagnateur.
Vous venez d'être nommé instructeur sur demarches-simplifiees.fr.
Votre compte (#{@email}) vous donnera désormais aussi accès à lespace instructeur.
\
Bonne journée,
\

View file

@ -2,7 +2,7 @@
%br
= image_tag(image_url(LOGO_NAME))
%br
%h2#gestionnaire_login Accompagnateur
%h2#gestionnaire_login Instructeur
%br
%br

View file

@ -78,7 +78,7 @@
%li
= link_to gestionnaire_procedures_path, class: "menu-item menu-link" do
= image_tag "icons/switch-profile.svg"
Passer en accompagnateur
Passer en instructeur
- if administrateur_signed_in? && nav_bar_profile != :administrateur
%li
= link_to admin_procedures_path, class: "menu-item menu-link" do

View file

@ -15,7 +15,7 @@
= link_to(gestionnaire_procedures_path) do
%i.fa.fa-user
&nbsp;
Accompagnateur
instructeur
- if administrateur_signed_in?
%li

View file

@ -1 +1 @@
= render partial: 'layouts/left_panels/left_panel_admin_procedurescontroller_navbar', locals: { active: 'Accompagnateurs' }
= render partial: 'layouts/left_panels/left_panel_admin_procedurescontroller_navbar', locals: { active: 'Instructeurs' }

View file

@ -18,9 +18,9 @@
.procedure-list-element
Services
%a#onglet-accompagnateurs{ href: url_for(admin_procedure_accompagnateurs_path(@procedure)) }
.procedure-list-element{ class: ('active' if active == 'Accompagnateurs') }
= t('dynamics.admin.procedure.onglets.accompagnateurs')
%a#onglet-instructeurs{ href: url_for(admin_procedure_instructeurs_path(@procedure)) }
.procedure-list-element{ class: ('active' if active == 'instructeurs') }
= t('dynamics.admin.procedure.onglets.instructeurs')
%a#onglet-description{ href: url_for(edit_admin_procedure_path(@procedure)) }
.procedure-list-element{ class: ('active' if active == 'Description') }

View file

@ -18,7 +18,7 @@
= link_to(admin_gestionnaires_path) do
%i.fa.fa-user
&nbsp;
= t('dynamics.admin.menu.accompagnateurs')
= t('dynamics.admin.menu.instructeurs')
%li.divider{ role: :separator }
%li
= link_to(admin_profile_path, id: :profile) do

View file

@ -1,10 +1,10 @@
.tab-title= "Envoyer ce dossier à un autre accompagnateur"
.tab-title= "Envoyer ce dossier à un autre instructeur"
- if potential_recipients.empty?
%p.tab-paragraph
Vous êtes le seul accompagnateur assigné sur cette procédure
Vous êtes le seul instructeur assigné sur cette procédure
- else
= form_for dossier, url: envoyer_a_accompagnateur_gestionnaire_dossier_path(dossier.procedure, dossier), method: :post, html: { class: 'form' } do |f|
= form_for dossier, url: envoyer_a_instructeur_gestionnaire_dossier_path(dossier.procedure, dossier), method: :post, html: { class: 'form' } do |f|
.flex.justify-start.align-baseline
= select_tag(:recipient, options_from_collection_for_select(potential_recipients, :id, :email))
= f.submit "Envoyer", class: "button large send gap-left"

View file

@ -5,7 +5,7 @@
.personnes-impliquees.container
= render partial: 'new_gestionnaire/dossiers/envoyer_dossier_block', locals: { dossier: @dossier, potential_recipients: @potential_recipients }
= render partial: 'new_gestionnaire/dossiers/personnes_impliquees_block', locals: { emails_collection: @following_accompagnateurs_emails, title: "Accompagnateurs qui suivent le dossier", blank: "Aucun accompagnateur ne suit ce dossier" }
= render partial: 'new_gestionnaire/dossiers/personnes_impliquees_block', locals: { emails_collection: @following_instructeurs_emails, title: "Instructeurs qui suivent le dossier", blank: "Aucun instructeur ne suit ce dossier" }
= render partial: 'new_gestionnaire/dossiers/personnes_impliquees_block', locals: { emails_collection: @avis_emails, title: "Personnes à qui un avis a été demandé", blank: "Aucun avis n'a été demandé" }

View file

@ -10,7 +10,7 @@
%p.confidentiel.flex
%span.icon.lock
%span
Cet avis est confidentiel et n'est pas affiché aux autres experts consultés mais est visible par tous les accompagnateurs
Cet avis est confidentiel et n'est pas affiché aux autres experts consultés mais est visible par tous les instructeurs
.send-wrapper
= f.submit 'Demander un avis', class: 'button send'
- else
@ -18,6 +18,6 @@
= f.label :confidentiel, 'Cet avis est'
= f.select :confidentiel, [['partagé avec les autres experts', false], ['confidentiel', true]], {}, onchange: "javascript:DS.toggleCondidentielExplanation(event);"
.confidentiel-explanation
Il ne sera pas affiché aux autres experts consultés mais sera visible par les accompagnateurs
Il ne sera pas affiché aux autres experts consultés mais sera visible par les instructeurs
.send-wrapper
= f.submit 'Demander un avis', class: 'button send'

View file

@ -19,11 +19,11 @@ fr:
nouvelle_procedure: 'Nouvelle procédure'
menu:
title: Mes procédures
accompagnateurs: Accompagnateurs
instructeurs: Instructeurs
procedures: Procédures
procedure:
onglets:
accompagnateurs: Accompagnateurs
onglet_accompagnateurs:
instructeurs: Instructeurs
onglet_instructeurs:
add:
title: 'Ajouter un accompagnateur'
title: 'Ajouter un instructeur'

View file

@ -223,7 +223,7 @@ Rails.application.routes.draw do
post 'transfer' => 'procedures#transfer', as: :transfer
put 'clone' => 'procedures#clone', as: :clone
resource :accompagnateurs, only: [:show, :update]
resource :instructeurs, only: [:show, :update]
resource :attestation_template, only: [:edit, :update, :create]
@ -234,8 +234,8 @@ Rails.application.routes.draw do
patch 'attestation_template/preview' => 'attestation_templates#preview'
end
namespace :accompagnateurs do
get 'show' # delete after fixed tests admin/accompagnateurs/show_spec without this line
namespace :instructeurs do
get 'show' # delete after fixed tests admin/instructeurs/show_spec without this line
end
resources :gestionnaires, only: [:index, :create, :destroy]
@ -319,7 +319,7 @@ Rails.application.routes.draw do
post 'passer-en-instruction' => 'dossiers#passer_en_instruction'
post 'repasser-en-construction' => 'dossiers#repasser_en_construction'
post 'terminer'
post 'envoyer-a-accompagnateur' => 'dossiers#envoyer_a_accompagnateur'
post 'envoyer-a-instructeur' => 'dossiers#envoyer_a_instructeur'
scope :carte do
get 'position'
end

View file

@ -51,7 +51,7 @@
"received_at": null,
"processed_at": null,
"motivation": null,
"accompagnateurs": [
"instructeurs": [
"gestionnaire@apientreprise.fr"
],
"invites": [

View file

@ -46,7 +46,7 @@ describe Admin::GestionnairesController, type: :controller do
let(:procedure_id) { procedure.id }
it { expect(response.status).to eq(302) }
it { expect(response).to redirect_to admin_procedure_accompagnateurs_path(procedure_id: procedure_id) }
it { expect(response).to redirect_to admin_procedure_instructeurs_path(procedure_id: procedure_id) }
end
describe 'Gestionnaire attributs in database' do
@ -148,7 +148,7 @@ describe Admin::GestionnairesController, type: :controller do
end
context 'Email notification' do
it 'Notification email is sent when accompagnateur is create' do
it 'Notification email is sent when instructeur is create' do
expect_any_instance_of(Gestionnaire).to receive(:invite!)
subject
end

View file

@ -1,6 +1,6 @@
require 'spec_helper'
describe Admin::AccompagnateursController, type: :controller do
describe Admin::InstructeursController, type: :controller do
let(:admin) { create(:administrateur) }
let(:procedure) { create :procedure, administrateur: admin }
let(:gestionnaire) { create :gestionnaire, administrateurs: [admin] }
@ -15,9 +15,9 @@ describe Admin::AccompagnateursController, type: :controller do
end
describe 'PUT #update' do
subject { put :update, params: { accompagnateur_id: gestionnaire.id, procedure_id: procedure.id, to: 'assign' } }
subject { put :update, params: { instructeur_id: gestionnaire.id, procedure_id: procedure.id, to: 'assign' } }
it { expect(subject).to redirect_to admin_procedure_accompagnateurs_path(procedure_id: procedure.id) }
it { expect(subject).to redirect_to admin_procedure_instructeurs_path(procedure_id: procedure.id) }
context 'when assignement is valid' do
before do

View file

@ -137,7 +137,7 @@ describe API::V1::DossiersController do
let!(:dossier) { Timecop.freeze(date_creation) { create(:dossier, :with_entreprise, procedure: procedure, motivation: "Motivation") } }
let(:dossier_id) { dossier.id }
let(:body) { JSON.parse(retour.body, symbolize_names: true) }
let(:field_list) { [:id, :created_at, :updated_at, :archived, :individual, :entreprise, :etablissement, :cerfa, :types_de_piece_justificative, :pieces_justificatives, :champs, :champs_private, :commentaires, :state, :simplified_state, :initiated_at, :processed_at, :received_at, :motivation, :email, :accompagnateurs, :invites] }
let(:field_list) { [:id, :created_at, :updated_at, :archived, :individual, :entreprise, :etablissement, :cerfa, :types_de_piece_justificative, :pieces_justificatives, :champs, :champs_private, :commentaires, :state, :simplified_state, :initiated_at, :processed_at, :received_at, :motivation, :email, :instructeurs, :invites] }
subject { body[:dossier] }
it 'return REST code 200', :show_in_doc do

View file

@ -31,7 +31,7 @@ describe NewGestionnaire::DossiersController, type: :controller do
end
end
describe '#envoyer_a_accompagnateur' do
describe '#envoyer_a_instructeur' do
let(:recipient) { create(:gestionnaire) }
let(:gestionnaires) { [gestionnaire, recipient] }
let(:mail) { double("mail") }
@ -45,7 +45,7 @@ describe NewGestionnaire::DossiersController, type: :controller do
.and_return(mail)
post(
:envoyer_a_accompagnateur,
:envoyer_a_instructeur,
params: {
recipient: recipient,
procedure_id: procedure.id,

View file

@ -83,7 +83,7 @@ feature 'As an administrateur I wanna create a new procedure', js: true do
end
end
scenario 'After adding champ and file, check impossibility to publish procedure, add accompagnateur and make publication' do
scenario 'After adding champ and file, check impossibility to publish procedure, add instructeur and make publication' do
fill_in 'procedure_types_de_champ_attributes_0_libelle', with: 'libelle de champ'
click_on 'add_type_de_champ'
click_on 'onglet-pieces'
@ -97,8 +97,8 @@ feature 'As an administrateur I wanna create a new procedure', js: true do
expect(page).to have_selector('#disabled-publish-procedure')
expect(page.find_by_id('disabled-publish-procedure')[:disabled]).to eq('true')
click_on 'onglet-accompagnateurs'
expect(page).to have_current_path(admin_procedure_accompagnateurs_path(Procedure.first))
click_on 'onglet-instructeurs'
expect(page).to have_current_path(admin_procedure_instructeurs_path(Procedure.first))
fill_in 'gestionnaire_email', with: 'gestionnaire@apientreprise.fr'
click_on 'add-gestionnaire-email'
page.first('.gestionnaire-affectation').click

View file

@ -13,7 +13,7 @@ RSpec.describe AvisMailer, type: :mailer do
context 'when the recipient is not already registered' do
before do
avis.email = 'accompagnateur@email.com'
avis.email = 'instructeur@email.com'
avis.gestionnaire = nil
end

View file

@ -37,18 +37,18 @@ describe DossierTableExportSerializer do
end
end
describe '#emails_accompagnateurs' do
describe '#emails_instructeurs' do
let(:gestionnaire){ create(:gestionnaire) }
let(:gestionnaire2) { create :gestionnaire }
let(:dossier) { create(:dossier) }
subject { DossierTableExportSerializer.new(dossier).emails_accompagnateurs }
subject { DossierTableExportSerializer.new(dossier).emails_instructeurs }
context 'when there is no accompagnateurs' do
context 'when there is no instructeurs' do
it { is_expected.to eq('') }
end
context 'when there one accompagnateur' do
context 'when there one instructeur' do
before { gestionnaire.followed_dossiers << dossier }
it { is_expected.to eq(gestionnaire.email) }

View file

@ -1,61 +0,0 @@
require 'spec_helper'
describe 'admin/accompagnateurs/show.html.haml', type: :view do
let(:admin) { create(:administrateur) }
let(:procedure) { create :procedure, administrateur: admin }
let(:assign_gestionnaires) { procedure.gestionnaires }
let(:not_assign_gestionnaires) { admin.gestionnaires.where.not(id: assign_gestionnaires.ids) }
before do
assign(:procedure, procedure)
assign(:gestionnaire, Gestionnaire.new)
assign(:accompagnateurs_assign, (smart_listing_create :accompagnateurs_assign,
assign_gestionnaires,
partial: "admin/accompagnateurs/list_assign",
array: true))
assign(:accompagnateurs_not_assign, (smart_listing_create :accompagnateurs_not_assign,
not_assign_gestionnaires,
partial: "admin/accompagnateurs/list_not_assign",
array: true))
end
context 'when admin have none accompagnateur ' do
before do
render
end
it { expect(rendered).to have_content('Aucun de disponible') }
context 'when administrateur have none accompagnateur assign' do
it { expect(rendered).to have_content('Aucun d\'affecté') }
end
end
context 'when administrateur have two accompagnateur' do
let!(:accompagnateur_1) { create :gestionnaire, email: 'plop@plop.com', administrateurs: [admin] }
let!(:accompagnateur_2) { create :gestionnaire, email: 'plip@plop.com', administrateurs: [admin] }
before do
not_assign_gestionnaires.reload
assign_gestionnaires.reload
assign(:accompagnateurs_assign, (smart_listing_create :accompagnateurs_assign,
assign_gestionnaires,
partial: "admin/accompagnateurs/list_assign",
array: true))
assign(:accompagnateurs_not_assign, (smart_listing_create :accompagnateurs_not_assign,
not_assign_gestionnaires,
partial: "admin/accompagnateurs/list_not_assign",
array: true))
render
end
it { expect(rendered).to have_content(accompagnateur_1.email) }
it { expect(rendered).to have_content(accompagnateur_2.email) }
end
end

View file

@ -16,10 +16,10 @@ describe 'admin/gestionnaires/index.html.haml', type: :view do
before do
render
end
it { expect(rendered).to have_content('Aucun accompagnateur') }
it { expect(rendered).to have_content('Aucun instructeur') }
end
context 'Ajout d\'un accompagnateur' do
context 'Ajout d\'un instructeur' do
before do
create(:gestionnaire, administrateurs: [admin])
admin.reload

View file

@ -0,0 +1,61 @@
require 'spec_helper'
describe 'admin/instructeurs/show.html.haml', type: :view do
let(:admin) { create(:administrateur) }
let(:procedure) { create :procedure, administrateur: admin }
let(:assign_gestionnaires) { procedure.gestionnaires }
let(:not_assign_gestionnaires) { admin.gestionnaires.where.not(id: assign_gestionnaires.ids) }
before do
assign(:procedure, procedure)
assign(:gestionnaire, Gestionnaire.new)
assign(:instructeurs_assign, (smart_listing_create :instructeurs_assign,
assign_gestionnaires,
partial: "admin/instructeurs/list_assign",
array: true))
assign(:instructeurs_not_assign, (smart_listing_create :instructeurs_not_assign,
not_assign_gestionnaires,
partial: "admin/instructeurs/list_not_assign",
array: true))
end
context 'when admin have none instructeur ' do
before do
render
end
it { expect(rendered).to have_content('Aucun de disponible') }
context 'when administrateur have none instructeur assign' do
it { expect(rendered).to have_content('Aucun d\'affecté') }
end
end
context 'when administrateur have two instructeur' do
let!(:instructeur_1) { create :gestionnaire, email: 'plop@plop.com', administrateurs: [admin] }
let!(:instructeur_2) { create :gestionnaire, email: 'plip@plop.com', administrateurs: [admin] }
before do
not_assign_gestionnaires.reload
assign_gestionnaires.reload
assign(:instructeurs_assign, (smart_listing_create :instructeurs_assign,
assign_gestionnaires,
partial: "admin/instructeurs/list_assign",
array: true))
assign(:instructeurs_not_assign, (smart_listing_create :instructeurs_not_assign,
not_assign_gestionnaires,
partial: "admin/instructeurs/list_not_assign",
array: true))
render
end
it { expect(rendered).to have_content(instructeur_1.email) }
it { expect(rendered).to have_content(instructeur_2.email) }
end
end

View file

@ -22,6 +22,6 @@ describe 'new_gestionnaire/dossiers/envoyer_dossier_block.html.haml', type: :vie
it { is_expected.not_to have_css("select") }
it { is_expected.not_to have_css(".button.send") }
it { is_expected.to have_content("Vous êtes le seul accompagnateur assigné sur cette procédure") }
it { is_expected.to have_content("Vous êtes le seul instructeur assigné sur cette procédure") }
end
end