/[openfoncier]/trunk/tests/050_instruction.robot
ViewVC logotype

Annotation of /trunk/tests/050_instruction.robot

Parent Directory Parent Directory | Revision Log Revision Log


Revision 4217 - (hide annotations)
Thu May 19 12:25:09 2016 UTC (8 years, 8 months ago) by jymadier
File size: 71566 byte(s)
* Correction des tests

1 mbroquet 3730 *** Settings ***
2     Documentation Test des évènements d'instruction.
3    
4     # On inclut les mots-clefs
5     Resource resources/resources.robot
6     # On ouvre/ferme le navigateur au début/à la fin du Test Suite.
7     Suite Setup For Suite Setup
8     Suite Teardown For Suite Teardown
9    
10    
11     *** Test Cases ***
12     Création du jeu de données
13    
14     [Documentation] Constitue le jeu de données.
15    
16     #
17     Depuis la page d'accueil guichet guichet
18     #
19     &{args_petitionnaire} = Create Dictionary
20     ... qualite=personne morale
21     ... personne_morale_denomination=Notaire&Co
22     ... personne_morale_raison_sociale=Société
23     ... personne_morale_civilite=Monsieur
24     ... personne_morale_nom=Martin
25     ... personne_morale_prenom=Nicolas
26    
27     &{args_demande} = Create Dictionary
28     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
29     ... demande_type=Dépôt Initial
30    
31     ${di_ok} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
32    
33     Depuis la page d'accueil admin admin
34     # Liste des valeurs pour le tableau des surfaces des données techniques
35     &{donnees_techniques_values} = Create Dictionary
36     ... su_avt_shon1=10
37     ... su_avt_shon2=10
38     ... su_avt_shon3=10
39     ... su_avt_shon4=10
40     ... su_avt_shon5=10
41     ... su_avt_shon6=10
42     ... su_avt_shon7=10
43     ... su_avt_shon8=10
44     ... su_avt_shon9=10
45     ... su_cstr_shon1=10
46     ... su_cstr_shon2=10
47     ... su_cstr_shon3=10
48     ... su_cstr_shon4=10
49     ... su_cstr_shon5=10
50     ... su_cstr_shon6=10
51     ... su_cstr_shon7=10
52     ... su_cstr_shon8=10
53     ... su_cstr_shon9=10
54     ... su_chge_shon1=10
55     ... su_chge_shon2=10
56     ... su_chge_shon3=10
57     ... su_chge_shon4=10
58     ... su_chge_shon5=10
59     ... su_chge_shon6=10
60     ... su_chge_shon7=10
61     ... su_chge_shon8=10
62     ... su_chge_shon9=10
63     ... su_demo_shon1=10
64     ... su_demo_shon2=10
65     ... su_demo_shon3=10
66     ... su_demo_shon4=10
67     ... su_demo_shon5=10
68     ... su_demo_shon6=10
69     ... su_demo_shon7=10
70     ... su_demo_shon8=10
71     ... su_demo_shon9=10
72     ... su_sup_shon1=10
73     ... su_sup_shon2=10
74     ... su_sup_shon3=10
75     ... su_sup_shon4=10
76     ... su_sup_shon5=10
77     ... su_sup_shon6=10
78     ... su_sup_shon7=10
79     ... su_sup_shon8=10
80     ... su_sup_shon9=10
81     Modifier les données techniques pour le calcul des surfaces ${di_ok} ${donnees_techniques_values}
82    
83     #
84     &{args_petitionnaire} = Create Dictionary
85     ... particulier_civilite=Monsieur
86     ... particulier_nom=Smith
87     ... particulier_prenom=John
88    
89     Depuis la page d'accueil guichet guichet
90     ${di_ko} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
91     #
92     Depuis la page d'accueil admin admin
93     #
94     Ajouter une instruction au DI ${di_ko} Consultation ERP ET IGH
95     # Liste des valeurs pour le tableau des surfaces des données techniques
96     &{donnees_techniques_values} = Create Dictionary
97     ... su_avt_shon1=10
98     ... su_avt_shon2=10
99     ... su_avt_shon3=10
100     ... su_avt_shon4=10
101     ... su_avt_shon5=10
102     ... su_avt_shon6=10
103     ... su_avt_shon7=10
104     ... su_avt_shon8=10
105     ... su_avt_shon9=10
106     ... su_cstr_shon1=10
107     ... su_cstr_shon2=10
108     ... su_cstr_shon3=10
109     ... su_cstr_shon4=10
110     ... su_cstr_shon5=10
111     ... su_cstr_shon6=10
112     ... su_cstr_shon7=10
113     ... su_cstr_shon8=10
114     ... su_cstr_shon9=10
115     ... su_chge_shon1=10
116     ... su_chge_shon2=10
117     ... su_chge_shon3=10
118     ... su_chge_shon4=10
119     ... su_chge_shon5=10
120     ... su_chge_shon6=10
121     ... su_chge_shon7=10
122     ... su_chge_shon8=10
123     ... su_chge_shon9=10
124     ... su_demo_shon1=10
125     ... su_demo_shon2=10
126     ... su_demo_shon3=10
127     ... su_demo_shon4=10
128     ... su_demo_shon5=10
129     ... su_demo_shon6=10
130     ... su_demo_shon7=10
131     ... su_demo_shon8=10
132     ... su_demo_shon9=10
133     ... su_sup_shon1=10
134     ... su_sup_shon2=10
135     ... su_sup_shon3=10
136     ... su_sup_shon4=10
137     ... su_sup_shon5=10
138     ... su_sup_shon6=10
139     ... su_sup_shon7=10
140     ... su_sup_shon8=10
141     ... su_sup_shon9=10
142     Modifier les données techniques pour le calcul des surfaces ${di_ko} ${donnees_techniques_values}
143     #
144     Set Suite Variable ${di_ok}
145     Set Suite Variable ${di_ko}
146    
147     Suivi des dates
148    
149     [Documentation] En tant qu'administrateur on doit pouvoir modifier les dates
150     ... d'un événément d'instruction finalisé sans avoir à le définaliser.
151    
152     # Variables
153     ${current_date_fr} = Date du jour FR
154     # Jeu de données
155     Depuis la page d'accueil guichet guichet
156     #
157     &{args_petitionnaire} = Create Dictionary
158     ... particulier_nom=Clavet
159     ... particulier_prenom=Sandrine
160     &{args_demande} = Create Dictionary
161     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
162     ... demande_type=Dépôt Initial
163     #
164     ${di} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
165     #
166     Depuis la page d'accueil admin admin
167     #
168     Ajouter une instruction au DI ${di} Notification de pieces manquante
169     #
170     Depuis la page d'accueil instr instr
171     #
172     Depuis l'instruction du dossier d'instruction ${di} Notification de pieces manquante
173     Click On SubForm Portlet Action instruction finaliser
174     # L'instruction doit être finalisée et l'instructeur ne peut pas suivre les dates
175     Depuis l'instruction du dossier d'instruction ${di} Notification de pieces manquante
176     Portlet Action Should Be In SubForm instruction edition
177     Portlet Action Should Be In SubForm instruction definaliser
178     Portlet Action Should Not Be In SubForm instruction modifier_suivi
179     Portlet Action Should Not Be In SubForm instruction modifier
180     # On clique sur l'action "Suivi des dates"
181     Depuis la page d'accueil adminfonct adminfonct
182     Depuis l'instruction du dossier d'instruction ${di} Notification de pieces manquante
183     Click On SubForm Portlet Action instruction modifier_suivi
184     # On saisit les dates
185     Input Datepicker date_finalisation_courrier ${current_date_fr}
186     Input Datepicker date_envoi_signature ${current_date_fr}
187     Input Datepicker date_envoi_rar ${current_date_fr}
188     Input Datepicker date_envoi_controle_legalite ${current_date_fr}
189     Input Datepicker date_retour_signature ${current_date_fr}
190     Input Datepicker date_retour_rar ${current_date_fr}
191     Input Datepicker date_retour_controle_legalite ${current_date_fr}
192     Click On Submit Button In Subform
193     # On contrôle les dates saisies
194     Click On Back Button In Subform
195     Element Text Should Be date_finalisation_courrier ${current_date_fr}
196     Element Text Should Be date_envoi_signature ${current_date_fr}
197     Element Text Should Be date_envoi_rar ${current_date_fr}
198     Element Text Should Be date_envoi_controle_legalite ${current_date_fr}
199     Element Text Should Be date_retour_signature ${current_date_fr}
200     Element Text Should Be date_retour_rar ${current_date_fr}
201     Element Text Should Be date_retour_controle_legalite ${current_date_fr}
202     # On doit pouvoir modifier mais pas suivre les dates si l'on n'est pas admin
203     Depuis la page d'accueil instr instr
204     Depuis l'instruction du dossier d'instruction ${di} Notification de pieces manquante
205     Portlet Action Should Not Be In SubForm instruction modifier_suivi
206     Click On SubForm Portlet Action instruction definaliser
207     Click On SubForm Portlet Action instruction modifier
208     Element Must Be Disabled date_finalisation_courrier
209     Element Must Be Disabled date_envoi_signature
210     Element Must Be Disabled date_envoi_rar
211     Element Must Be Disabled date_retour_signature
212     Element Must Be Disabled date_retour_rar
213     Depuis la page d'accueil adminfonct adminfonct
214     Depuis l'instruction du dossier d'instruction ${di} Notification de pieces manquante
215     Portlet Action Should Not Be In SubForm instruction modifier_suivi
216     Click On SubForm Portlet Action instruction modifier
217     Element Must Be Enabled date_finalisation_courrier
218     Element Must Be Enabled date_envoi_signature
219     Element Must Be Enabled date_envoi_rar
220     Element Must Be Enabled date_retour_signature
221     Element Must Be Enabled date_retour_rar
222    
223     Régénérer le récépissé de dépôt
224    
225     [Documentation] Régénère le récépissé de dépôt de la demande après une
226     ... modification du dossier d'instruction par le guichet unique. Vérifie
227     ... aussi que le guichet unique n'a pas les droits sur un di déjà en
228     ... instruction.
229    
230     #
231     Depuis la page d'accueil guichet guichet
232     #
233     Depuis le contexte du dossier d'instruction ${di_ok}
234     # Vérifie que l'action modifier est disponible
235     Portlet Action Should Be In Form dossier_instruction modifier
236     # Vérifie que l'action de régénération est disponible
237     Portlet Action Should Be In Form dossier_instruction recepisse
238     #
239     Depuis le formulaire de modification du dossier d'instruction ${di_ok}
240     # On modifie l'adresse du terrain
241     Open Fieldset dossier_instruction localisation-du-terrain
242     Input Text terrain_adresse_voie_numero 10
243     Input Text terrain_adresse_voie Rue des Arts
244     # On valide le formulaire
245     Click On Submit Button
246     # Vérification du message de validation
247     Valid Message Should Be Vos modifications ont bien été enregistrées.
248     #
249     Depuis le contexte du dossier d'instruction ${di_ok}
250     # On régénère le récépissé de demande
251     Click On Form Portlet Action dossier_instruction recepisse
252     # On vérifie le message de validation
253     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Valid Message Should Contain Le récépissé de la demande a été régénéré.
254     # On ouvre le PDF
255     Click Link css=#telecharger_recepisse
256     # XXX Debug
257     ${test} = Get Window Titles
258     Log ${test}
259     Open PDF file
260     # On vérifie la localisation du terrain
261     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page Should Contain 10 Rue des Arts
262     # On ferme le PDF
263     Close PDF
264     #
265     Depuis le contexte du dossier d'instruction ${di_ko}
266     # Vérifie que l'action modifier est disponible
267     Portlet Action Should Not Be In Form dossier_instruction modifier
268     # Vérifie que l'action de régénération est disponible
269     Portlet Action Should Not Be In Form dossier_instruction recepisse
270    
271     Lien vers le di dans le message de validation de la demande
272    
273     [Documentation] Vérifie si le lien dans le message de validation est
274     ... fonctionnel.
275    
276     #
277     Depuis la page d'accueil guichet guichet
278     #
279     &{args_petitionnaire} = Create Dictionary
280     ... particulier_nom=DUPONT
281     ... particulier_prenom=Geralt
282    
283     &{args_demande} = Create Dictionary
284     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
285     ... demande_type=Dépôt Initial
286     ${libelle_di} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
287     # On clique sur le lien vers le DI du message de validation
288     Click Link css=#link_demande_dossier_instruction
289     # On vérifie le fil d'Ariane
290     Page Title Should Be Instruction > Dossiers D'instruction > ${libelle_di} DUPONT GERALT
291    
292     Finalisation
293     [Documentation] L'objet de ce 'Test Case' est de vérifier le log de
294     ... l'utilisateur qui a finalisé l'évènement.
295    
296     # Constitution du jeu de données : deux utilisateurs dont un est instructeur
297     # car si tel est le cas son nom d'instructeur surcharge son nom d'utilisateur.
298     # En tant qu'administrateur
299     Depuis la page d'accueil admin admin
300     # Donnée 1/3 : guichetier
301     Ajouter l'utilisateur depuis le menu Margand Joanna [email protected] guimars guimars GUICHET UNIQUE MARSEILLE
302     # Donnée 2/3 : instructeur
303     Ajouter l'utilisateur depuis le menu Marois Alain -UTIL- [email protected] instrmars instrmars INSTRUCTEUR MARSEILLE
304     Ajouter l'instructeur depuis le menu Marois Alain -INSTR- subdivision H Marois Alain -UTIL-
305     # Donnée 3/3 : affectation automatique du nouvel instructeur
306     Ajouter l'affectation depuis le menu Marois Alain -INSTR- null MARSEILLE
307    
308     # En tant que guichetier
309     Depuis la page d'accueil guimars guimars
310     # On crée une nouvelle demande via le tableau de bord
311     &{args_petitionnaire} = Create Dictionary
312     ... particulier_nom=Perrault
313     ... particulier_prenom=Sophie
314    
315     &{args_demande} = Create Dictionary
316 jymadier 4169
317 mbroquet 3730 ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
318     ... demande_type=Dépôt Initial
319     # On crée une nouvelle demande via le tableau de bord
320     ${di_libelle} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
321     # En tant qu'instructeur de Martigues
322     Depuis la page d'accueil instrmars instrmars
323     # On ouvre l'onglet instruction du nouveau DI
324     Depuis l'onglet instruction du dossier d'instruction ${di_libelle}
325     # On accède à l'instruction
326     Click On Link Notification du delai legal maison individuelle
327     # On vérifie qu'elle a été finalisée par le guichetier automatiquement
328     # lors de la création
329     Wait Until Element Is Visible om_final_instruction_utilisateur
330     Element Text Should Be om_final_instruction_utilisateur guimars (Margand Joanna)
331     # On reprend la rédaction
332     Click On SubForm Portlet Action instruction definaliser
333     # On vérifie qu'il n'y a pas le champ "finalisé par"
334     Element Should Not Be Visible om_final_instruction_utilisateur
335     # On finalise
336     Click On SubForm Portlet Action instruction finaliser
337     # On vérifie le log
338 jymadier 4217 Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Text Should Be om_final_instruction_utilisateur instrmars (Marois Alain -INSTR-)
339 mbroquet 3730
340     Définalisation d'instruction
341    
342     [Documentation] Permet de vérifier qu'un utilisateur hors division ne peut
343     ... définaliser un événement d'instruction.
344    
345     Depuis la page d'accueil instr2 instr
346     Depuis le contexte du dossier d'instruction ${di_ko}
347     # On clique sur le lien Instruction
348     Click On Link css=#instruction
349     # On clique sur la 1ere instruction
350     Click On Link Notification du delai legal maison individuelle
351     # Vérification que l'instructeur ne peut pas definaliser
352     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Not Contain css=#sousform-instruction div#portlet-actions Reprendre la rédaction du document
353    
354     Génération du bordereau d'envoi au maire
355     [Documentation] L'objet de ce 'Test Case' est de vérifier la génération
356     ... du PDF ainsi que la mise à jour de la date d'envoi du courrier
357     ... pour signature par le maire.
358    
359     # Constitution du jeu de données : un DI commune pour lequel un utilisateur
360     # communauté génère l'édition
361     Depuis la page d'accueil admin admin
362     # Donnée 1/3 : guichetier
363     Ajouter l'utilisateur depuis le menu Legault Simone [email protected] guimars2 guimars2 GUICHET UNIQUE MARSEILLE
364     # Donnée 2/3 : instructeur
365     Ajouter l'utilisateur depuis le menu Garcia Gabriel [email protected] instrmars2 instrmars2 INSTRUCTEUR MARSEILLE
366     Ajouter l'instructeur depuis le menu Garcia Gabriel subdivision H Garcia Gabriel
367     # Donnée 3/3 : affectation automatique du nouvel instructeur
368     Ajouter l'affectation depuis le menu Garcia Gabriel null MARSEILLE
369    
370     # En tant que guichetier
371     Depuis la page d'accueil guimars2 guimars2
372     # On crée une nouvelle demande via le tableau de bord
373     &{args_petitionnaire} = Create Dictionary
374     ... particulier_nom=Brousseau
375     ... particulier_prenom=Henry
376    
377     &{args_demande} = Create Dictionary
378     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
379     ... demande_type=Dépôt Initial
380     ${di_libelle} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
381    
382     # En tant qu'instructeur
383     Depuis la page d'accueil instrmars2 instrmars2
384     # On récupère l'identifiant de l' événement d'instruction
385     Depuis l'onglet instruction du dossier d'instruction ${di_libelle}
386     Click On Link Notification du delai legal maison individuelle
387     ${id_instruction} = Get Text css=div#form-content span#instruction
388     # On en déduit le code-barres
389     ${code_barres} = STR_PAD_LEFT ${id_instruction} 10 0
390     ${code_barres} = Catenate 11${code_barres}
391    
392     # En tant qu'administrateur
393     Depuis la page d'accueil admin admin
394     # On ouvre l'interface de génération du bordereau
395     Depuis le formulaire d'édition du bordereau d'envoi au maire
396     # On saisit un mauvais code-barres
397     Saisir le formulaire du bordereau d'envoi au maire ${code_barres}1
398     # On valide le formulaire
399     Valider le formulaire du bordereau d'envoi au maire
400     # On vérifie le message d'erreur
401     Error Message Should Be Le numéro saisi ne correspond a aucun code-barres d’événement d'instruction.
402     # On saisit un code-barres valide
403     Saisir le formulaire du bordereau d'envoi au maire ${code_barres}
404     # On revalide le formulaire
405     Valider le formulaire du bordereau d'envoi au maire
406     # On clique sur le lien de l'édition
407     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Click Element generer_bordereau_envoi_maire
408     # On vérifie le contenu du PDF généré
409     Open PDF form
410     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} PDF Pages Number Should Be 1
411     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page Should Contain bordereau d'envoi
412     Close PDF
413     # On accède à l'événement d'instruction
414     Depuis l'onglet instruction du dossier d'instruction ${di_libelle}
415     Click On Link Notification du delai legal maison individuelle
416     ${date_fr} = Date du jour FR
417     Element Text Should Be date_envoi_signature ${date_fr}
418    
419    
420     Vérification du récapitulatif du dossier d'instruction
421    
422     [Documentation] Vérifie l'affichage des champs de fusion sur un dossier
423     ... d'instruction.
424    
425     Depuis la page d'accueil instr instr
426     Depuis le contexte du dossier d'instruction ${di_ko}
427     # On clique sur l'action édition
428     Click On Form Portlet Action dossier_instruction edition
429     # On ouvre le PDF
430     Open PDF form
431     # On vérifie le pétitionnaire principal
432     Wait Until Keyword Succeeds 5 sec 0.2 sec Page Should Contain Monsieur Smith John
433     # On vérifie le résultat total du tableau des surface
434     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page Should Contain Surface totale : 90
435     # On ferme le PDF
436     Close PDF
437    
438    
439     Vérification de l'édition de l'instruction
440    
441     [Documentation] Vérifie l'affichage des champs de fusion sur une
442     ... instruction.
443    
444     Depuis la page d'accueil instr instr
445     Depuis l'instruction du dossier d'instruction ${di_ok} Notification du delai legal maison individuelle
446     # On clique sur l'action édition
447     Click On SubForm Portlet Action instruction edition
448     # On ouvre le PDF
449     Open PDF file
450     # On vérifie le pétitionnaire principal
451     Wait Until Keyword Succeeds 5 sec 0.2 sec Page Should Contain Société Notaire&Co représenté(e) par Monsieur Martin Nicolas
452     # On vérifie le résultat total du tableau des surface
453     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page Should Contain Surface totale : 90
454     # On ferme le PDF
455     Close PDF
456    
457    
458     Vérification de l'édition du rapport d'instruction
459    
460     [Documentation] Vérifie l'affichage des champs de fusion sur un rapport
461     ... d'instruction.
462    
463     #
464     Depuis la page d'accueil instr instr
465     #
466     Depuis le contexte du rapport d'instruction ${di_ok}
467     # On valide le rapport d'instruction
468     Click On Submit Button In Subform
469     # On vérifie le message de validation
470     Valid Message Should Contain Vos modifications ont bien été enregistrées.
471     # On clique sur le bouton retour
472     Click On Back Button In Subform
473     #
474     Depuis le contexte du rapport d'instruction ${di_ok}
475     # On clique sur l'action de finaliser
476     Wait Until Keyword Succeeds 5 sec 0.2 sec Click On SubForm Portlet Action rapport_instruction finalise
477     Wait Until Keyword Succeeds 5 sec 0.2 sec Valid Message Should Contain In Subform La finalisation du document s'est effectuée avec succès.
478     # On clique sur l'action édition
479     Click On SubForm Portlet Action rapport_instruction edition
480     # On ouvre le PDF
481     Open PDF file
482     # On vérifie le pétitionnaire principal
483     Wait Until Keyword Succeeds 5 sec 0.2 sec Page Should Contain Société Notaire&Co représenté(e) par Monsieur Martin Nicolas
484     # On vérifie le résultat total du tableau des surface
485     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page Should Contain Surface totale : 90
486     # On ferme le PDF
487     Close PDF
488    
489     Changement de décision par commune
490     [Documentation] L'objet de ce 'Test Case' est de vérifier le changement de
491     ... décision par un instructeur polyvalent commune
492    
493 jymadier 4169 Depuis la page d'accueil admin admin
494 mbroquet 3730 # Création de l'action de workflow "changement de décision"
495     &{args_action} = Create Dictionary
496     ... action=changer_decision
497     ... libelle=Changer la décision
498     ... regle_etat=etat
499    
500     Ajouter l'action depuis le menu ${args_action}
501    
502     # Création d'un événement de workflow de changement de décision
503     @{etat_source} = Create List dossier accepter dossier accepté tacitement dossier rejeter manque de pieces delai de notification envoye
504     @{type_di} = Create List PA - P - Initial PCI - P - Initial
505    
506     &{args_evenement} = Create Dictionary
507     ... libelle=Modification décision
508     ... type=changement de décision
509     ... etats_depuis_lequel_l_evenement_est_disponible=${etat_source}
510     ... dossier_instruction_type=${type_di}
511     ... action=Changer la décision
512     ... etat=delai de notification envoye
513    
514     Ajouter l'événement depuis le menu ${args_evenement}
515    
516     # Création d'un DI sur lequel on testera le changement de décision par
517     # instructeur polyvalent commune
518     Depuis la page d'accueil instrpoly instrpoly
519    
520     &{args_petitionnaire} = Create Dictionary
521     ... particulier_nom=Halliwell
522     ... particulier_prenom=Geri
523     ... om_collectivite=MARSEILLE
524     &{args_demande} = Create Dictionary
525     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
526     ... demande_type=Dépôt Initial
527     ... om_collectivite=MARSEILLE
528     ${di_change_decision} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
529    
530     Depuis la page d'accueil admin admin
531     Modifier le paramètre option_afficher_division true agglo
532    
533     Modifier le dossier d'instruction ${di_change_decision} Poly (H)
534    
535     Depuis la page d'accueil instrpolycomm instrpolycomm
536     ${widget_content} = Get Text view_widget_dossiers_evenement_retour_finalise
537     Should Not Contain ${widget_content} ${di_change_decision}
538    
539     Depuis la page d'accueil instrpoly instrpoly
540    
541     # Ajout au DI une décision que l'utilisateur instructeur polyvalent commune changera
542     Ajouter une instruction au DI ${di_change_decision} ARRÊTÉ DE REFUS
543     Click On Back Button In Subform
544     Click On Link ARRÊTÉ DE REFUS
545     Click On SubForm Portlet Action instruction finaliser
546    
547     # Connexion avec l'instructeur polyvalent commune
548     Depuis la page d'accueil instrpolycomm instrpolycomm
549     ${widget_content} = Get Text view_widget_dossiers_evenement_retour_finalise
550     Should Contain ${widget_content} ${di_change_decision}
551     # On clic pour voir tous les dossiers
552     Click On Link Voir les dossiers auxquels on peut proposer une autre décision
553     # On clic sur le DI
554     Click On Link ${di_change_decision}
555     #
556     On clique sur l'onglet instruction Instruction
557     # Ajout de l'événement d'instruction de modification de décision
558     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Click Element action-soustab-instruction-corner-ajouter
559     #
560     Saisir instruction Modification décision
561     # On valide le formulaire
562     Click On Submit Button In Subform
563     # On vérifie le message de validation
564     Valid Message Should Contain In Subform Vos modifications ont bien été enregistrées.
565    
566     Depuis la page d'accueil instrpolycomm2 instrpolycomm2
567     # Changement de la décision
568     Ajouter une instruction au DI ${di_change_decision} ARRÊTÉ DE REFUS 2
569    
570     Depuis la page d'accueil instrpolycomm instrpolycomm
571     # On finalise avec un autre instructeur polyvalent commune
572     Depuis l'onglet instruction du dossier d'instruction ${di_change_decision}
573     Click On Link ARRÊTÉ DE REFUS 2
574     ${id_instruction} = Get Text css=div#form-content span#instruction
575     Click On SubForm Portlet Action instruction finaliser
576    
577     # En tant qu'instructeur
578     Depuis la page d'accueil instrpoly instrpoly
579    
580     # On en déduit le code-barres
581     ${code_barres} = STR_PAD_LEFT ${id_instruction} 10 0
582     ${code_barres} = Catenate 11${code_barres}
583     Go To Submenu In Menu suivi suivi_mise_a_jour_des_dates
584     Select From List By Label css=#type_mise_a_jour date de retour de l'AR
585     ${date} = Date du jour FR
586     Input Text date ${date}
587     Input Text code_barres ${code_barres}
588     # On valide le formulaire
589     Click Element css=#formulaire div.formControls input[type="submit"]
590     Click Element css=#formulaire div.formControls input[type="submit"]
591    
592     Depuis la page d'accueil instrpolycomm instrpolycomm
593     ${widget_content} = Get Text view_widget_dossiers_evenement_retour_finalise
594     Should Not Contain ${widget_content} ${di_change_decision}
595    
596    
597     Widget "Recherche Dossier"
598    
599     [Documentation] L'objet de ce 'Test Case' est de vérifier le
600     ... fonctionnement du widget 'Recherche Dossier'
601     ... (widget_recherche_dossier)
602    
603     # En tant qu'instructeur
604     Depuis la page d'accueil instr instr
605    
606     #
607     # Cas d'utilisation n°1
608     #
609     # Saisie d'un numéro de dossier complet (avec et sans espaces)
610     #
611    
612     #
613     Go to dashboard
614     #
615     Input Text css=#dashboard div.widget_recherche_dossier input#dossier PC 013055 12 00001P0
616     #
617     Click Element css=#dashboard div.widget_recherche_dossier div.formControls input
618     #
619     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page title should be Instruction > Dossiers D'instruction > PC 013055 12 00001P0 DUPONT JACQUES
620     #
621     Page Should Not Contain Errors
622     #
623     Go to dashboard
624     #
625     Input Text css=#dashboard div.widget_recherche_dossier input#dossier PC0130551200001P0
626     #
627     Click Element css=#dashboard div.widget_recherche_dossier div.formControls input
628     #
629     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page title should be Instruction > Dossiers D'instruction > PC 013055 12 00001P0 DUPONT JACQUES
630     #
631     Page Should Not Contain Errors
632    
633    
634     #
635     # Cas d'utilisation n°2
636     #
637     # Saisie d'une portion d'un numéro de dossier
638     #
639    
640     # Cas 2a : un seul dossier
641     Go to dashboard
642     #
643     Input Text css=#dashboard div.widget_recherche_dossier input#dossier PC*5120*1P0
644     #
645     Click Element css=#dashboard div.widget_recherche_dossier div.formControls input
646     #
647     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page title should be Instruction > Dossiers D'instruction > PC 013055 12 00001P0 DUPONT JACQUES
648     #
649     Page Should Not Contain Errors
650     #
651    
652     # Cas 2b : plusieurs dossiers
653     Go to dashboard
654     #
655     Input Text css=#dashboard div.widget_recherche_dossier input#dossier 013055
656     #
657     Click Element css=#dashboard div.widget_recherche_dossier div.formControls input
658     #
659     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page title should be Instruction > Dossiers D'instruction
660     #
661     Page Should Not Contain Errors
662     #
663     Textfield Value Should Be css=#advanced-form #dossier *013055
664    
665    
666     #
667     # Cas d'utilisation n°3
668     #
669     # Saisie d'un numéro de dossier inexistant
670     #
671    
672     #
673     Go to dashboard
674     #
675     Input Text css=#dashboard div.widget_recherche_dossier input#dossier ZZZZZZZZZZZZ
676     #
677     Click Element css=#dashboard div.widget_recherche_dossier div.formControls input
678     #
679     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page title should be Tableau De Bord
680     #
681     Page Should Not Contain Errors
682     #
683     Element Text Should Be css=#dashboard div.widget_recherche_dossier div.message.ui-state-error p span.text Aucun dossier trouvé
684    
685    
686     #
687     # Cas d'utilisation n°4
688     #
689     # Aucune valeur saisie
690     #
691    
692     #
693     Go to dashboard
694     #
695     Click Element css=#dashboard div.widget_recherche_dossier div.formControls input
696     #
697     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page title should be Tableau De Bord
698     #
699     Page Should Not Contain Errors
700     #
701     Element Text Should Be css=#dashboard div.widget_recherche_dossier div.message.ui-state-error p span.text Veuillez saisir un No de dossier.
702    
703    
704     #
705     # TNR Bug "Erreur de base de données" lors de saisie de caractères spéciaux
706     #
707    
708     #
709     Go to dashboard
710     #
711     Input Text css=#dashboard div.widget_recherche_dossier input#dossier ;"?#'
712     #
713     Click Element css=#dashboard div.widget_recherche_dossier div.formControls input
714     #
715     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page title should be Tableau De Bord
716     #
717     Page Should Not Contain Errors
718    
719    
720     Widget "Dossiers Limites"
721    
722     [Documentation] L'objet de ce 'Test Case' est de vérifier le
723     ... fonctionnement du widget 'Dossiers Limites'
724     ... (widget_dossiers_limites)
725    
726     #
727     # Cas d'utilisation n°1
728     # Un paramètre permet de filtrer les dossiers qui apparaissent soit par :
729     # - instructeur
730     # - division
731     # - aucun
732     #
733    
734     # ATTENTION : ce test case dépend des jeux de données init_data
735     ${di_instr_1_division_1_commune_1} = Set Variable DP 013055 12 00001P0
736     ${di_instr_2_division_1_commune_1} = Set Variable PC 013055 12 00001P0
737     ${di_instr_3_division_2_commune_1} = Set Variable PD 013055 12 00001P0
738    
739     # Filtre sur l'instructeur
740     Depuis la page d'accueil admin admin
741     Go To Tab om_widget
742     Click On Link dossiers_limites
743     Click On Form Portlet Action om_widget modifier
744     Input Text texte filtre=instructeur
745     Click On Submit Button
746     #
747     Depuis la page d'accueil instr instr
748     Element Should Not Contain css=.widget_dossiers_limites Vous n'avez pas de dossiers limites pour le moment.
749     Element Should Contain css=.widget_dossiers_limites ${di_instr_1_division_1_commune_1}
750     Element Should Not Contain css=.widget_dossiers_limites ${di_instr_2_division_1_commune_1}
751     Element Should Not Contain css=.widget_dossiers_limites ${di_instr_3_division_2_commune_1}
752     Click Element css=.widget_dossiers_limites .widget-footer a
753     Page Title Should Be Instruction > Dossiers Limites
754     Element Should Contain css=#tab-dossiers_limites ${di_instr_1_division_1_commune_1}
755     Element Should Not Contain css=#tab-dossiers_limites ${di_instr_2_division_1_commune_1}
756     Element Should Not Contain css=#tab-dossiers_limites ${di_instr_3_division_2_commune_1}
757    
758     # Filtre sur la division
759     Depuis la page d'accueil admin admin
760     Go To Tab om_widget
761     Click On Link dossiers_limites
762     Click On Form Portlet Action om_widget modifier
763     Input Text texte filtre=division
764     Click On Submit Button
765     #
766     Depuis la page d'accueil instr instr
767     Element Should Not Contain css=.widget_dossiers_limites Vous n'avez pas de dossiers limites pour le moment.
768     Element Should Contain css=.widget_dossiers_limites ${di_instr_1_division_1_commune_1}
769     Element Should Contain css=.widget_dossiers_limites ${di_instr_2_division_1_commune_1}
770     Element Should Not Contain css=.widget_dossiers_limites ${di_instr_3_division_2_commune_1}
771     Click Element css=.widget_dossiers_limites .widget-footer a
772     Page Title Should Be Instruction > Dossiers Limites
773     Element Should Contain css=#tab-dossiers_limites ${di_instr_1_division_1_commune_1}
774     Element Should Contain css=#tab-dossiers_limites ${di_instr_2_division_1_commune_1}
775     Element Should Not Contain css=#tab-dossiers_limites ${di_instr_3_division_2_commune_1}
776    
777     #
778     Depuis la page d'accueil admin admin
779     Go To Tab om_widget
780     Click On Link dossiers_limites
781     Click On Form Portlet Action om_widget modifier
782     Input Text texte filtre=aucun
783     Click On Submit Button
784     #
785     Depuis la page d'accueil instr instr
786     Element Should Not Contain css=.widget_dossiers_limites Vous n'avez pas de dossiers limites pour le moment.
787     Element Should Contain css=.widget_dossiers_limites ${di_instr_1_division_1_commune_1}
788     Element Should Contain css=.widget_dossiers_limites ${di_instr_2_division_1_commune_1}
789     Element Should Contain css=.widget_dossiers_limites ${di_instr_3_division_2_commune_1}
790     Click Element css=.widget_dossiers_limites .widget-footer a
791     Page Title Should Be Instruction > Dossiers Limites
792     Element Should Contain css=#tab-dossiers_limites ${di_instr_1_division_1_commune_1}
793     Element Should Contain css=#tab-dossiers_limites ${di_instr_2_division_1_commune_1}
794     Element Should Contain css=#tab-dossiers_limites ${di_instr_3_division_2_commune_1}
795    
796     #
797     # Cas d'utilisation n°2
798     # Un paramètre permet de filtrer sur les types de dossiers qui apparaissent
799     #
800    
801     # ATTENTION : ce test case dépend des jeux de données init_data
802     ${di_type_dp} = Set Variable DP 013055 12 00001P0
803     ${di_type_pc} = Set Variable PC 013055 12 00001P0
804    
805     #
806     Depuis la page d'accueil admin admin
807     Go To Tab om_widget
808     Click On Link dossiers_limites
809     Click On Form Portlet Action om_widget modifier
810     Input Text texte codes_datd=PCI;PCA;PC\nfiltre=aucun
811     Click On Submit Button
812     #
813     Depuis la page d'accueil instr instr
814     Element Should Not Contain css=.widget_dossiers_limites Vous n'avez pas de dossiers limites pour le moment.
815     Element Should Contain css=.widget_dossiers_limites ${di_type_pc}
816     Element Should Not Contain css=.widget_dossiers_limites ${di_type_dp}
817     Click Element css=.widget_dossiers_limites .widget-footer a
818     Page Title Should Be Instruction > Dossiers Limites
819     Element Should Contain css=#tab-dossiers_limites ${di_type_pc}
820     Element Should Not Contain css=#tab-dossiers_limites ${di_type_dp}
821    
822     #
823     Depuis la page d'accueil admin admin
824     Go To Tab om_widget
825     Click On Link dossiers_limites
826     Click On Form Portlet Action om_widget modifier
827     Input Text texte codes_datd=DP;DPS\nfiltre=aucun
828     Click On Submit Button
829     #
830     Depuis la page d'accueil instr instr
831     Element Should Not Contain css=.widget_dossiers_limites Vous n'avez pas de dossiers limites pour le moment.
832     Element Should Contain css=.widget_dossiers_limites ${di_type_dp}
833     Element Should Not Contain css=.widget_dossiers_limites ${di_type_pc}
834     Click Element css=.widget_dossiers_limites .widget-footer a
835     Page Title Should Be Instruction > Dossiers Limites
836     Element Should Contain css=#tab-dossiers_limites ${di_type_dp}
837     Element Should Not Contain css=#tab-dossiers_limites ${di_type_pc}
838    
839     #
840     Depuis la page d'accueil admin admin
841     Go To Tab om_widget
842     Click On Link dossiers_limites
843     Click On Form Portlet Action om_widget modifier
844     Input Text texte codes_datd=ZZ\nfiltre=aucun
845     Click On Submit Button
846     #
847     Depuis la page d'accueil instr instr
848     Element Should Contain css=.widget_dossiers_limites Vous n'avez pas de dossiers limites pour le moment.
849     Element Should Not Contain css=.widget_dossiers_limites ${di_type_dp}
850     Element Should Not Contain css=.widget_dossiers_limites ${di_type_pc}
851     Element Should Not Contain css=.widget_dossiers_limites Voir +
852    
853     #
854     # Cas d'utilisation n°3
855     # Vérifier le paramètre nombre de jours
856     #
857    
858     #
859     # Cas d'utilisation n°4
860     # Vérfier les cas de date limite et de l'état du dossier
861     # TEST provenant de testWidget.php (test_dossier_limite)
862     # XXX les dossiers utilisés ici ne sont pas dans un état cohérent pour apparaître
863     ${di_limite} = Set Variable PD 013055 12 00001P0
864     ${di_limite_incomplet} = Set Variable AT 013055 13 00001P0
865    
866     # Filtre sur la division
867     Depuis la page d'accueil admin admin
868     Go To Tab om_widget
869     Click On Link dossiers_limites
870     Click On Form Portlet Action om_widget modifier
871     Input Text texte filtre=aucun
872     Click On Submit Button
873     #
874     Depuis la page d'accueil divi divi
875     Element Should Not Contain css=.widget_dossiers_limites Vous n'avez pas de dossiers limites pour le moment.
876     Element Should Contain css=.widget_dossiers_limites ${di_limite}
877     Element Should Contain css=.widget_dossiers_limites ${di_limite_incomplet}
878     Click Element css=.widget_dossiers_limites .widget-footer a
879     Page Title Should Be Instruction > Dossiers Limites
880     Element Should Contain css=#tab-dossiers_limites ${di_limite}
881     Element Should Contain css=#tab-dossiers_limites ${di_limite_incomplet}
882    
883     TNR Bug instructeur commune modifier finaliser définaliser instruction
884    
885     Depuis la page d'accueil instrpolycomm instrpolycomm
886    
887     &{args_petitionnaire} = Create Dictionary
888     ... particulier_nom=Dupont
889     ... particulier_prenom=Marc
890     &{args_demande} = Create Dictionary
891     ... dossier_autorisation_type_detaille=DECLARATION PREALABLE SIMPLE
892     ... demande_type=Dépôt Initial
893     ${di} = Ajouter la nouvelle demande depuis le menu ${args_demande} ${args_petitionnaire}
894    
895     Depuis l'onglet instruction du dossier d'instruction ${di}
896     Click On Link Notification du delai legal maison individuelle
897     Click On SubForm Portlet Action instruction definaliser
898     Click On SubForm Portlet Action instruction modifier
899     Click On Submit Button In Subform
900     Click On Back Button In Subform
901     Click On SubForm Portlet Action instruction finaliser
902    
903     TNR Bug instructeur commune ajout d'evenements autre que décision
904    
905     Depuis la page d'accueil instrpolycomm2 instrpolycomm2
906    
907     &{args_petitionnaire} = Create Dictionary
908     ... particulier_nom=Dupont
909     ... particulier_prenom=Francis
910     &{args_demande} = Create Dictionary
911     ... dossier_autorisation_type_detaille=Certificat d'urbanisme
912     ... demande_type=Dépôt Initial
913     ${di} = Ajouter la nouvelle demande depuis le menu ${args_demande} ${args_petitionnaire}
914    
915     Ajouter une instruction au DI ${di} Commission Communale de Sécurité
916    
917    
918     TNR Bug instructeur commune ajout d'evenements sur dossier cloturé
919    
920     Depuis la page d'accueil instrpolycomm instrpolycomm
921    
922     &{args_petitionnaire} = Create Dictionary
923     ... particulier_nom=Dupont
924     ... particulier_prenom=Albert
925     &{args_demande} = Create Dictionary
926     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
927     ... demande_type=Dépôt Initial
928     ${di} = Ajouter la nouvelle demande depuis le menu ${args_demande} ${args_petitionnaire}
929    
930     Depuis la page d'accueil instrpoly instrpoly
931     Ajouter une instruction au DI ${di} accepter un dossier avec reserve
932     Click On Back Button In Subform
933     Click Link accepter un dossier avec reserve
934     # On finalise
935     Click On SubForm Portlet Action instruction finaliser
936    
937     Depuis la page d'accueil instrpolycomm instrpolycomm
938     ${widget_content} = Get Text view_widget_dossiers_evenement_retour_finalise
939     Should Not Contain ${widget_content} ${di}
940    
941     Depuis l'onglet instruction du dossier d'instruction ${di}
942     Should Not Contain css=#sousform-instruction action-soustab-instruction-corner-ajouter
943    
944    
945     TNR Bug type de dossiers auxquels un instructeur commune peut changer la décision
946     [Documentation] Les types de demande DOC DAACT et PRO ne doivent pas
947     ... apparaître dans le widget des dossiers auxquels on peut changer la décision
948    
949     # Création d'un DI initial
950     Depuis la page d'accueil instrpoly instrpoly
951    
952     &{args_petitionnaire} = Create Dictionary
953     ... particulier_nom=Beckham
954     ... particulier_prenom=Victoria
955     ... om_collectivite=MARSEILLE
956     &{args_demande} = Create Dictionary
957     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
958     ... demande_type=Dépôt Initial
959     ... om_collectivite=MARSEILLE
960     ${di_change_decision} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
961    
962     # Ajout au DI une décision que l'utilisateur instructeur polyvalent commune changera
963     Ajouter une instruction au DI ${di_change_decision} accepter un dossier sans réserve
964     Click On Back Button In Subform
965     Click On Link accepter un dossier sans réserve
966     Click On SubForm Portlet Action instruction finaliser
967    
968     &{args_demande} = Create Dictionary
969     ... demande_type=Demande d'ouverture de chantier
970     ... om_collectivite=MARSEILLE
971     ${di_change_decision_2} = Ajouter la demande sur existant depuis le tableau de bord ${di_change_decision} ${args_demande}
972    
973     Depuis la page d'accueil admin admin
974     Modifier le paramètre option_afficher_division true agglo
975     Modifier le dossier d'instruction ${di_change_decision_2} Poly (H)
976    
977     # Ajout au DI une décision que l'utilisateur instructeur polyvalent commune changera
978     Ajouter une instruction au DI ${di_change_decision_2} ARRÊTÉ DE REFUS
979     Click On Back Button In Subform
980     Click On Link ARRÊTÉ DE REFUS
981     Click On SubForm Portlet Action instruction finaliser
982    
983     Depuis la page d'accueil instrpolycomm instrpolycomm
984     # Vérification widget
985     ${widget_content} = Get Text view_widget_dossiers_evenement_retour_finalise
986     Should Not Contain ${widget_content} ${di_change_decision_2}
987     # Vérification tableau
988     Go To Tab dossier_instruction&decision=true
989     Page Should Not Contain ${di_change_decision_2}
990    
991     TNR Nature des travaux dans la description du DI
992     [Documentation] Concernant les données techniques sur la nature des travaux,
993     ... lorsque les cases sont cochées alors la description du projet les affiche.
994    
995     # Création d'un DI initial de type AT
996     Depuis la page d'accueil instrpoly instrpoly
997    
998     &{args_petitionnaire} = Create Dictionary
999     ... particulier_nom=Hasselhoff
1000     ... particulier_prenom=David
1001     ... om_collectivite=MARSEILLE
1002     &{args_demande} = Create Dictionary
1003     ... dossier_autorisation_type_detaille=Demande d'autorisation de construire, d'aménager ou de modifier un ERP
1004     ... demande_type=Dépôt Initial
1005     ... om_collectivite=MARSEILLE
1006     ${di} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
1007    
1008     # On coche les cases du CERFA sur la nature des travaux
1009     Depuis le contexte du dossier d'instruction ${di}
1010     Click On Form Portlet Action dossier_instruction donnees_techniques
1011     Click On SubForm Portlet Action donnees_techniques modifier
1012     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Click Element css=fieldset[id*='amenager-ou-modifier-un-erp'] > legend
1013     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Be Visible css=fieldset[id*='amenager-ou-modifier-un-erp'] > div.fieldsetContent
1014     Select Checkbox erp_cstr_neuve
1015     Select Checkbox erp_trvx_acc
1016     Select Checkbox erp_extension
1017     Select Checkbox erp_rehab
1018     Select Checkbox erp_trvx_am
1019     Select Checkbox erp_vol_nouv_exist
1020     Click On Submit Button In Subform
1021     Click On Back Button In Subform
1022     # On contrôle la description du projet
1023     Reload Page
1024     Element Should Contain description_projet Construction neuve
1025     Element Should Contain description_projet Travaux de mise en conformité totale aux règles d’accessibilité
1026     Element Should Contain description_projet Extension
1027     Element Should Contain description_projet Réhabilitation
1028     Element Should Contain description_projet Travaux d’aménagement (remplacement de revêtements, rénovation électrique, création d’une rampe, par exemple)
1029     Element Should Contain description_projet Création de volumes nouveaux dans des volumes existants (modification du cloisonnement, par exemple)
1030    
1031    
1032     TNR Vérifie que l'instructeur n'est pas impacté par la restriction du guichet unique
1033    
1034     [Documentation] Vérifie que l'instructeur peut toujours modifier le dossier
1035     ... d'instruction, même si la restriction imposée pour le guichet unique
1036     ... n'est pas respectée. Le guichet unique ne peut modifier le dossier
1037     ... d'instruction qu'a condition que sa seule instruction soit son
1038     ... récépissé.
1039    
1040     #
1041     Depuis la page d'accueil admin admin
1042     #
1043     Ajouter l'affectation depuis le menu Poly Permis de construire comprenant ou non des démolitions MARSEILLE
1044    
1045     #
1046     Depuis la page d'accueil guichetsuivi guichetsuivi
1047     # On ajoute un dossier d'instruction
1048     &{args_petitionnaire} = Create Dictionary
1049     ... particulier_nom=DUPONT
1050     ... particulier_prenom=Geralt
1051     &{args_demande} = Create Dictionary
1052     ... dossier_autorisation_type_detaille=Permis de construire comprenant ou non des démolitions
1053     ... demande_type=Dépôt Initial
1054     ${libelle_di} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
1055     #
1056     Depuis le contexte du dossier d'instruction ${libelle_di}
1057     # Vérifie l'action modifier pour le guichet et suivi
1058     Portlet Action Should Be In Form dossier_instruction modifier
1059     # Vérifie l'action de régénérer le récépissé pour le guichet et suivi
1060     Portlet Action Should Be In Form dossier_instruction recepisse
1061     #
1062     Depuis la page d'accueil instrpoly instrpoly
1063     #
1064     Depuis le contexte du dossier d'instruction de mes encours ${libelle_di}
1065     # Vérifie l'action modifier pour l'instructeur polyvalent
1066     Portlet Action Should Be In Form dossier_instruction_mes_encours modifier
1067     #
1068     Ajouter une instruction au DI ${libelle_di} majoration_IGH
1069     #
1070     Depuis le contexte du dossier d'instruction de mes encours ${libelle_di}
1071     # Vérifie l'action modifier pour l'instructeur polyvalent
1072     Portlet Action Should Be In Form dossier_instruction_mes_encours modifier
1073    
1074     #
1075     Depuis la page d'accueil guichetsuivi guichetsuivi
1076     #
1077     Depuis le contexte du dossier d'instruction ${libelle_di}
1078     # Vérifie l'action modifier pour le guichet et suivi
1079     Portlet Action Should Not Be In Form dossier_instruction modifier
1080     # Vérifie l'action de régénérer le récépissé pour le guichet et suivi
1081     Portlet Action Should Not Be In Form dossier_instruction recepisse
1082    
1083     #
1084     Depuis la page d'accueil admin admin
1085     #
1086     Supprimer l'affectation depuis le menu Poly
1087    
1088    
1089     TNR L'intructeur qui prend le rôle du guichet doit avoir la possibilité de modifier le dossier d'instruction
1090    
1091     [Documentation] Vérifie que l'instructeur d'une commune puisse modifier le
1092     ... dossier d'instruction qu'il a ajouté mais qui est affecté à un
1093     ... instructeur de la communauté. Un autyre isntructeur de la même commune
1094     ... devrait pouvoir aussi modifier ce dossier d'instruction.
1095    
1096     #
1097     Depuis la page d'accueil admin admin
1098     #
1099     Ajouter l'affectation depuis le menu Poly Permis de construire comprenant ou non des démolitions MARSEILLE
1100    
1101     # Instructeur commune qui ajoute la demande mais n'est pas responsable du DI
1102     Depuis la page d'accueil instrpolycomm instrpolycomm
1103     # On ajoute une demande
1104     &{args_petitionnaire} = Create Dictionary
1105     ... particulier_nom=Dunphy
1106     ... particulier_prenom=Phil
1107     &{args_demande} = Create Dictionary
1108     ... dossier_autorisation_type_detaille=Permis de construire comprenant ou non des démolitions
1109     ... demande_type=Dépôt Initial
1110     ${libelle_di} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
1111     #
1112     Depuis le contexte du dossier d'instruction ${libelle_di}
1113     # Vérifie que l'action modifier est disponible
1114     Portlet Action Should Be In Form dossier_instruction modifier
1115     # Vérifie que l'action de régénérer le récépissé est disponible
1116     Portlet Action Should Be In Form dossier_instruction recepisse
1117    
1118     # Instructeur de la même commune qui n'est pas responsable aussi
1119     Depuis la page d'accueil instrpolycomm2 instrpolycomm2
1120     #
1121     Depuis le contexte du dossier d'instruction ${libelle_di}
1122     # Vérifie que l'action modifier est disponible
1123     Portlet Action Should Be In Form dossier_instruction modifier
1124     # Vérifie que l'action de régénérer le récépissé est disponible
1125     Portlet Action Should Be In Form dossier_instruction recepisse
1126    
1127     # Instructeur communauté affecté au dossier
1128     Depuis la page d'accueil instrpoly instrpoly
1129     #
1130     Depuis le contexte du dossier d'instruction ${libelle_di}
1131     # Vérifie que l'action modifier est disponible
1132     Portlet Action Should Be In Form dossier_instruction modifier
1133     # Vérifie que l'action de régénérer le récépissé est disponible
1134     Portlet Action Should Be In Form dossier_instruction recepisse
1135     # On commence à instruire le dossier
1136     Ajouter une instruction au DI ${libelle_di} majoration_IGH
1137     #
1138     Depuis le contexte du dossier d'instruction ${libelle_di}
1139     # Vérifie que l'action modifier est disponible
1140     Portlet Action Should Be In Form dossier_instruction modifier
1141     # Vérifie que l'action de régénérer le récépissé n'est plus disponible
1142     Portlet Action Should Not Be In Form dossier_instruction recepisse
1143    
1144     # On se reconnecte avec l'instructeur qui a ajouté la demande
1145     Depuis la page d'accueil instrpolycomm instrpolycomm
1146     #
1147     Depuis le contexte du dossier d'instruction ${libelle_di}
1148     # Vérifie que l'action modifier n'est plus disponible
1149     Portlet Action Should Not Be In Form dossier_instruction modifier
1150     # Vérifie que l'action de régénérer le récépissé n'est plus disponible
1151     Portlet Action Should Not Be In Form dossier_instruction recepisse
1152    
1153     # On se reconnecte avec l'instructeur de la commune que l'instructeur ayant
1154     # ajouté la demande
1155     Depuis la page d'accueil instrpolycomm2 instrpolycomm2
1156     #
1157     Depuis le contexte du dossier d'instruction ${libelle_di}
1158     # Vérifie que l'action modifier n'est plus disponible
1159     Portlet Action Should Not Be In Form dossier_instruction modifier
1160     # Vérifie que l'action de régénérer le récépissé n'est plus disponible
1161     Portlet Action Should Not Be In Form dossier_instruction recepisse
1162    
1163    
1164     TNR Modification des paramètres de la variable de remplacement &contrainte
1165    
1166     [Documentation] Vérifie que les 3 paramètres de &contrainte liste_groupe,
1167     ... liste_ssgroupe, affichage_sans_arborescence modifient l'affichage des
1168     ... contraintes sans erreurs.
1169    
1170     # Le contenu de la nouvelle lettre-type de test, avec &contraintes sans paramètres
1171     &{args_lettretype} = Create Dictionary
1172     ... id=test_contraintes
1173     ... libelle=Test des nouveaux paramètres &CONTRAINTES
1174     ... sql=Aucune REQUÊTE
1175     ... titre=&contraintes
1176     ... corps=&contraintes
1177     ... actif=true
1178     ... collectivite=MARSEILLE
1179    
1180     &{args_evenement} = Create Dictionary
1181     ... libelle=Notification du delai legal maison individuelle
1182     ... lettretype=test_contraintes Test des nouveaux paramètres &CONTRAINTES
1183    
1184     Depuis la page d'accueil admin admin
1185     Ajouter la lettre-type depuis le menu &{args_lettretype}
1186     # On change la lettre-type de l'évènement de création d'une nouvelle demande, en
1187     # définissant notre nouvelle lettre-type comme modèle
1188     Modifier l'événement ${args_evenement}
1189     ${id_contrainte1} = Ajouter la contrainte depuis le menu Contrainte TNR instruction 1 PLU MARSEILLE TNR instr sousgroupe 1ère contrainte instr
1190     ${id_contrainte2} = Ajouter la contrainte depuis le menu Contrainte TNR instruction 2 PLU MARSEILLE TNR instr sousgroupe 2ème contrainte instr
1191     ${id_contrainte3} = Ajouter la contrainte depuis le menu Contrainte TNR instruction 3 PLU MARSEILLE TNR instr2 null 3ème contrainte instr2
1192    
1193     # Création d'une nouvelle demande pour notre test
1194     Depuis la page d'accueil guichet guichet
1195     &{args_petitionnaire} = Create Dictionary
1196     ... particulier_nom=Saville
1197     ... particulier_prenom=Lazure
1198     &{args_demande} = Create Dictionary
1199     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
1200     ... demande_type=Dépôt Initial
1201     ${libelle_di} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
1202    
1203     # Ajout de contraintes à notre dossier de test
1204     Depuis la page d'accueil instr instr
1205     Ajouter une contrainte depuis l'onglet du dossier d'instruction ${libelle_di}
1206     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page Should Contain Element fieldset-sousform-dossier_contrainte-contraintes-openads
1207     Open Fieldset In Subform dossier_contrainte tnr-instr
1208     Open Fieldset In Subform dossier_contrainte sousgroupe
1209     Open Fieldset In Subform dossier_contrainte tnr-instr2
1210     Select Checkbox css=#contrainte_${id_contrainte1}
1211     Select Checkbox css=#contrainte_${id_contrainte2}
1212     Select Checkbox css=#contrainte_${id_contrainte3}
1213     # On clique sur Appliquer les changements
1214     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Click Element css=#sformulaire div.formControls input[type="submit"]
1215     # Vérification des messages
1216     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=#sousform-dossier_contrainte div.message.ui-state-valid p span.text Contrainte TNR instruction 1 a été ajoutée au dossier.
1217     Element Should Contain css=#sousform-dossier_contrainte div.message.ui-state-valid p span.text La contrainte Contrainte TNR instruction 2 a été ajoutée au dossier.
1218     Element Should Contain css=#sousform-dossier_contrainte div.message.ui-state-valid p span.text La contrainte Contrainte TNR instruction 3 a été ajoutée au dossier.
1219    
1220     Depuis le contexte du dossier d'instruction ${libelle_di}
1221     # Vérifie que l'action de régénération est disponible
1222     Portlet Action Should Be In Form dossier_instruction recepisse
1223     # On régénère le récépissé de demande
1224     Click On Form Portlet Action dossier_instruction recepisse
1225     # On vérifie le message de validation
1226     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Valid Message Should Contain Le récépissé de la demande a été régénéré.
1227     # On ouvre le PDF
1228     Click Link css=#telecharger_recepisse
1229     Open PDF file
1230     # On vérifie que la lettre-type contient toutes les contraintes
1231     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page Should Contain TNR INSTR
1232     Page Should Contain SOUSGROUPE
1233     Page Should Contain 1ère contrainte instr
1234     Page Should Contain 2ème contrainte instr
1235     Page Should Contain TNR INSTR2
1236     Page Should Contain 3ème contrainte instr2
1237     Close PDF
1238    
1239     # On ajoute le paramètre liste_groupe à la variable &contraintes dans la lettre-type
1240     &{args_lettretype} = Create Dictionary
1241     ... id=test_contraintes
1242     ... libelle=Test des nouveaux paramètres &CONTRAINTES
1243     ... sql=Aucune REQUÊTE
1244     ... titre=&contraintes(liste_groupe=TNR INSTR)
1245     ... corps=&contraintes(liste_groupe=TNR INSTR)
1246     ... actif=true
1247     ... collectivite=MARSEILLE
1248    
1249     Depuis la page d'accueil admin admin
1250     # XXX Appel à la surcharge de Modifier la lettre-type du core, à virer !!
1251     # Redéfinit la lettre-type avec les arguments passés
1252     Modifier la lettre-type XXX &{args_lettretype}
1253    
1254     Depuis le contexte du dossier d'instruction ${libelle_di}
1255     Portlet Action Should Be In Form dossier_instruction recepisse
1256     # On régénère le récépissé de demande
1257     Click On Form Portlet Action dossier_instruction recepisse
1258     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Valid Message Should Contain Le récépissé de la demande a été régénéré.
1259     # On ouvre le PDF
1260     Click Link css=#telecharger_recepisse
1261     Open PDF file
1262     # On doit avoir seulement les contraintes du groupe Zones du PLU
1263     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page Should Contain TNR INSTR
1264     Page Should Contain 1ère contrainte instr
1265     Page Should Contain 2ème contrainte instr
1266     Page Should Not Contain TNR INSTR2
1267     Page Should Not Contain 3ème contrainte instr2
1268     Close PDF
1269    
1270     # On active l'affichage sans arborescence, avec les paramètres liste_groupe et
1271     # listess_groupe activés
1272     &{args_lettretype} = Create Dictionary
1273     ... id=test_contraintes
1274     ... libelle=Test des nouveaux paramètres &CONTRAINTES
1275     ... sql=Aucune REQUÊTE
1276     ... titre=&contraintes(liste_groupe=TNR INSTR;liste_ssgroupe=sousgroupe;affichage_sans_arborescence=t)
1277     ... corps=&contraintes(liste_groupe=TNR INSTR;liste_ssgroupe=sousgroupe;affichage_sans_arborescence=t)
1278     ... actif=true
1279     ... collectivite=MARSEILLE
1280    
1281     # XXX Appel à la surcharge de Modifier la lettre-type du core, à virer !!
1282     # Redéfinit la lettre-type avec les arguments passés
1283     Modifier la lettre-type XXX &{args_lettretype}
1284    
1285     Depuis le contexte du dossier d'instruction ${libelle_di}
1286     Portlet Action Should Be In Form dossier_instruction recepisse
1287     # On régénère le récépissé de demande
1288     Click On Form Portlet Action dossier_instruction recepisse
1289     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Valid Message Should Contain Le récépissé de la demande a été régénéré.
1290     # On ouvre le PDF
1291     Click Link css=#telecharger_recepisse
1292     Open PDF file
1293     # Le PDF doit contenir les 2 contraintes "Zones du PLU", sans groupes
1294     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Page Should Contain 1ère contrainte instr
1295     Page Should Contain 2ème contrainte instr
1296     Page Should Not Contain TNR INSTR
1297     Page Should Not Contain TNR INSTR2
1298     Page Should Not Contain 3ème contrainte instr2
1299     Close PDF
1300    
1301     &{args_evenement} = Create Dictionary
1302     ... libelle=Notification du delai legal maison individuelle
1303     ... lettretype=recepisse_1 RECEPISSE DE DEPOT
1304    
1305     # On remet la lettre-type de récépissé de dépôt initiale pour les tests suivants
1306     Modifier l'événement ${args_evenement}
1307    
1308 jymadier 3936
1309 mbroquet 3730 Test du tableau des dossiers d'autorisation liés géographiquement
1310    
1311     [Documentation] Ajoute 2 nouvelles demandes avec une parcelle en commun, puis affiche
1312     ... le tableau des dossiers liés géographiquement pour les 2 dossiers. L'autre DA
1313     ... avec la même parcelle doit être présent, mais pas le DA lié au DI courant.
1314    
1315     Depuis la page d'accueil guichet guichet
1316     &{args_petitionnaire} = Create Dictionary
1317     ... particulier_nom=Beauchamps
1318     ... particulier_prenom=Jeanette
1319    
1320 jymadier 3962 @{ref_cad} = Create List 806 AB 25 A 30
1321 mbroquet 3730
1322     &{args_demande} = Create Dictionary
1323     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
1324     ... demande_type=Dépôt Initial
1325     ... terrain_references_cadastrales=${ref_cad}
1326     ${libelle_di} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
1327    
1328     &{args_petitionnaire} = Create Dictionary
1329     ... particulier_nom=Forest
1330     ... particulier_prenom=David
1331    
1332     @{ref_cad} = Create List 806 AB 01 A 50
1333    
1334     &{args_demande} = Create Dictionary
1335     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
1336     ... demande_type=Dépôt Initial
1337     ... terrain_references_cadastrales=${ref_cad}
1338    
1339     ${libelle_di2} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
1340    
1341     ${libelle_da} = Get Substring ${libelle_di} 0 -2
1342     ${libelle_da2} = Get Substring ${libelle_di2} 0 -2
1343    
1344 jymadier 3936 Depuis la page d'accueil instr instr
1345     Ajouter une instruction au DI et la finaliser ${libelle_di} accepter un dossier sans réserve
1346 mbroquet 3730
1347 jymadier 3936 &{args_demande} = Create Dictionary
1348     ... demande_type=Demande de modification
1349    
1350     Depuis la page d'accueil guichet guichet
1351     Ajouter la demande sur existant depuis le tableau de bord ${libelle_di} ${args_demande}
1352    
1353 mbroquet 3730 Depuis l'onglet de DA lié du dossier d'instruction ${libelle_di}
1354     # Le tableau des dossiers liés géographiquement ne doit pas contenir le DA lié au DI courant
1355     Element Should Not Contain sousform-dossier_autorisation_lies_geographiquement ${libelle_da}
1356     # Le 2ème dossier avec la même parcelle doit apparaître
1357 jymadier 3962 Element Should Contain X Times sousform-dossier_autorisation_lies_geographiquement ${libelle_da2} 1
1358 mbroquet 3730
1359     Depuis la page d'accueil instr instr
1360     Depuis l'onglet de DA lié du dossier d'instruction ${libelle_di2}
1361 jymadier 3936 # Le tableau doit contenir une seule fois le DA qui a 2 DI avec une parcelle en commun
1362 jymadier 3962 Element Should Contain X Times sousform-dossier_autorisation_lies_geographiquement ${libelle_da} 1
1363 mbroquet 3730 # Le tableau des dossiers liés géographiquement ne doit pas contenir le DA lié au DI courant
1364     Element Should Not Contain sousform-dossier_autorisation_lies_geographiquement ${libelle_da2}
1365 nmeucci 3873
1366 jymadier 3936
1367 nmeucci 3873 Restriction d'événement
1368     [Documentation] Teste une double condition dans la restriction :
1369     ... date événement <= date limite de notification au pétitionnaire
1370     ... date de dépôt == date de complétude
1371    
1372     ${date_valid} = Set Variable 01/01/2015
1373     ${date_invalid} = Set Variable 01/04/2016
1374    
1375     #
1376     # Cas 1 : opérateur logique || sur P0
1377     # La condition est satisfaite
1378     #
1379    
1380     # Création du DI sur lequel nous allons faire l'incomplétude
1381     &{case1_evenement} = Create Dictionary
1382     ... libelle=Notification de pieces manquante
1383     ... restriction=date_evenement <= archive_date_notification_delai || archive_date_complet == date_depot
1384     &{case1_petitionnaire} = Create Dictionary
1385     ... particulier_civilite=Madame
1386     ... particulier_nom=Déziel
1387     ... particulier_prenom=Audrey
1388     &{case1_demande} = Create Dictionary
1389     ... date_demande=${date_valid}
1390     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
1391     ... demande_type=Dépôt Initial
1392     #
1393     Depuis la page d'accueil admin admin
1394 softime 3878 # On récupère la restriction avant de la modifier
1395     Depuis le contexte de l'événement Notification de pieces manquante
1396     ${restriction_before} = Get Text css=#restriction
1397     #
1398 nmeucci 3873 Modifier l'événement ${case1_evenement}
1399     #
1400     Depuis la page d'accueil guichet guichet
1401     ${case1_di} = Ajouter la nouvelle demande depuis le tableau de bord
1402     ... ${case1_demande}
1403     ... ${case1_petitionnaire}
1404     # Vu le || la condition est satisfaite
1405     Depuis la page d'accueil instr instr
1406     Ajouter une instruction au DI ${case1_di} Notification de pieces manquante ${date_invalid}
1407     Valid Message Should Contain In Subform Vos modifications ont bien été enregistrées.
1408    
1409     #
1410     # Cas 2 : opérateur logique && sur DOC01
1411     # La condition n'est pas satisfaite
1412     #
1413    
1414     # Création du DI sur lequel nous allons faire l'incomplétude
1415     &{case2_evenement} = Create Dictionary
1416     ... libelle=Notification de pieces manquante
1417     ... restriction=date_evenement <= archive_date_notification_delai && archive_date_complet == date_depot
1418     #
1419     &{case2_petitionnaire} = Create Dictionary
1420     ... particulier_civilite=Madame
1421     ... particulier_nom=Bourgeau
1422     ... particulier_prenom=Corinne
1423     &{case2_demande_temp} = Create Dictionary
1424     ... date_demande=${date_valid}
1425     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
1426     ... demande_type=Dépôt Initial
1427     &{case2_demande} = Create Dictionary
1428     ... date_demande=${date_valid}
1429     ... demande_type=Demande d'ouverture de chantier
1430     #
1431     Depuis la page d'accueil admin admin
1432     Modifier l'événement ${case2_evenement}
1433     #
1434     Depuis la page d'accueil guichet guichet
1435     ${case2_di_temp} = Ajouter la nouvelle demande depuis le tableau de bord
1436     ... ${case2_demande_temp}
1437     ... ${case2_petitionnaire}
1438     #
1439     Depuis la page d'accueil instr instr
1440     Ajouter une instruction au DI ${case2_di_temp} accepter un dossier sans réserve ${date_valid}
1441     #
1442     Depuis la page d'accueil guichet guichet
1443     ${case2_di} = Ajouter la demande sur existant depuis le tableau de bord
1444     ... ${case2_di_temp}
1445     ... ${case2_demande}
1446     # Vu le && la condition est non satisfaite
1447     Depuis la page d'accueil instr instr
1448     Depuis l'onglet instruction du dossier d'instruction ${case2_di}
1449     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Click Element action-soustab-instruction-corner-ajouter
1450     Saisir instruction Notification de pieces manquante ${date_invalid}
1451     Click On Submit Button In Subform
1452     Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Contain css=div.ui-state-error p span.text SAISIE NON ENREGISTRÉE
1453     Element Should Contain css=div.ui-state-error p span.text date d'évènement <= date limite de notification au pétitionnaire && date de complétude archivé == date de dépôt
1454    
1455     #
1456     # Restauration de la restriction
1457     #
1458     &{old_evenement} = Create Dictionary
1459     ... libelle=Notification de pieces manquante
1460 softime 3878 ... restriction=${restriction_before}
1461 nmeucci 3873 Depuis la page d'accueil admin admin
1462 jymadier 4053 Modifier l'événement ${old_evenement}
1463    
1464    
1465     TNR Vérifie que le fichier est supprimé à la suppression de l'instruction
1466    
1467     [Documentation] Vérifie dans le filestorage si le fichier de l'édition de
1468     ... l'instruction est correctement supprimé lors de la suppression de
1469     ... l'instruction.
1470    
1471     #
1472     Depuis la page d'accueil guichet guichet
1473     # Liste des arguments pour la demande
1474     &{args_demande} = Create Dictionary
1475     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
1476     ... demande_type=Dépôt Initial
1477     # Liste des arguments pour le pétitionnaire
1478     &{args_petitionnaire} = Create Dictionary
1479     ... particulier_nom=Batard
1480     ... particulier_prenom=Laurene
1481     ${di} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
1482     #
1483     Depuis la page d'accueil instr instr
1484     Ajouter une instruction au DI ${di} accepter un dossier sans réserve
1485     #
1486     Depuis l'instruction du dossier d'instruction ${di} accepter un dossier sans réserve
1487     # On clique sur l'action de finalisation
1488     Click On SubForm Portlet Action instruction finaliser
1489     # On vérifie le message de validation
1490     Wait Until Keyword Succeeds 5 sec 0.2 sec Valid Message Should Be La finalisation du document s'est effectuée avec succès.
1491     # Récupération de l'UID
1492     Depuis l'instruction du dossier d'instruction ${di} accepter un dossier sans réserve
1493     ${uid} = Get Value om_fichier_instruction
1494     ${path_1} = Get Substring ${uid} 0 2
1495     ${path_2} = Get Substring ${uid} 0 4
1496     # Vérification dans le filestorage
1497 fmichon 4072 File Should Exist ..${/}var${/}filestorage${/}${path_1}${/}${path_2}${/}${uid}
1498     File Should Exist ..${/}var${/}filestorage${/}${path_1}${/}${path_2}${/}${uid}.info
1499 jymadier 4053 #
1500     Depuis la page d'accueil admin admin
1501     Depuis l'instruction du dossier d'instruction ${di} accepter un dossier sans réserve
1502     # On clique sur l'action de définalisation
1503     Click On SubForm Portlet Action instruction definaliser
1504     # On vérifie le message de validation
1505     Wait Until Keyword Succeeds 5 sec 0.2 sec Valid Message Should Be La definalisation du document s'est effectuée avec succès.
1506     #
1507     Supprimer l'instruction ${di} accepter un dossier sans réserve
1508     # Vérification dans le filestorage
1509 fmichon 4072 File Should Not Exist ..${/}var${/}filestorage${/}${path_1}${/}${path_2}${/}${uid}
1510 nmeucci 4108 File Should Not Exist ..${/}var${/}filestorage${/}${path_1}${/}${path_2}${/}${uid}.info
1511    
1512     Mail aux communes
1513     [Documentation] Test de l'action sur l'instruction permettant à l'instructeur,
1514     ... une fois son courrier finalisé, de déclencher l'envoi d'un mail aux communes.
1515    
1516     # Création du DI
1517     Depuis la page d'accueil guichet guichet
1518     &{args_petitionnaire} = Create Dictionary
1519     ... particulier_nom=Gareau
1520     ... particulier_prenom=Élisabeth
1521     &{args_demande} = Create Dictionary
1522     ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
1523     ... demande_type=Dépôt Initial
1524     ${di} = Ajouter la nouvelle demande depuis le tableau de bord ${args_demande} ${args_petitionnaire}
1525     # Création de l'instruction finalisée
1526     Depuis la page d'accueil instr instr
1527     Ajouter une instruction au DI ${di} Notification de pieces manquante
1528     Click On Back Button In Subform
1529     Click On Link Notification de pieces manquante
1530     Click On SubForm Portlet Action instruction finaliser
1531     # Saisie du paramétrage commune en sus du multi par fourni par défaut
1532     Depuis la page d'accueil admingen admingen
1533     Ajouter le paramètre depuis le menu param_courriel_de_notification_commune [email protected] MARSEILLE
1534     # Succès de la notification
1535     Depuis l'instruction du dossier d'instruction ${di} Notification de pieces manquante
1536     Click On SubForm Portlet Action instruction notifier_commune
1537     Click Element css=div.ui-dialog-buttonset button
1538     Valid Message Should Be In Subform La commune a été notifiée.
1539     # Échec de la notification si objet, modèle ou courriel indéfini
1540     Modifier le paramètre param_courriel_de_notification_commune_objet_depuis_instruction ${SPACE}
1541     Modifier le paramètre param_courriel_de_notification_commune_modele_depuis_instruction ${SPACE}
1542     Modifier le paramètre param_courriel_de_notification_commune ${SPACE}
1543     Depuis l'instruction du dossier d'instruction ${di} Notification de pieces manquante
1544     Click On SubForm Portlet Action instruction notifier_commune
1545     Click Element css=div.ui-dialog-buttonset button
1546     Error Message Should Contain In Subform l'objet du courriel envoyé aux communes est vide
1547     Error Message Should Contain In Subform le modèle du courriel envoyé aux communes est vide
1548     Error Message Should Contain In Subform aucun courriel valide de destinataire de la commune

Properties

Name Value
svn:executable

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26