/[openfoncier]/branches/evo-notification-pieces-numerisees-widget/tests/110_message.robot
ViewVC logotype

Contents of /branches/evo-notification-pieces-numerisees-widget/tests/110_message.robot

Parent Directory Parent Directory | Revision Log Revision Log


Revision 4129 - (show annotations)
Thu May 12 11:29:01 2016 UTC (8 years, 8 months ago) by fmichon
File size: 16321 byte(s)
* Ajout des tests fonctionnels et repositionnement du code du select supprimé dans un commit précédent.

1 *** Settings ***
2 Documentation Gestion des messages.
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 Constitution du jeu de données
13
14 [Documentation] L'objet de ce 'Test Case' est de constituer un jeu de
15 ... données cohérent pour les scénarios fonctionnels qui suivent.
16
17 # Date du jour au format : JJ/MM/AAAA
18 ${date_jour} = Date du jour FR
19 Set Suite Variable ${date_jour}
20
21
22 Gestion des retours de messages depuis la rubrique 'Instruction'
23
24 [Documentation]
25
26 ##
27 ## Constitution du jeu de données
28 ##
29 ## On cré deux nouvelles collectivités pour être sûr du nombre
30 ## de retours de messages à vérifier dans les widgets et tableaux
31 ##
32 #
33 ${collectivite_a} = Set Variable SAMBALPUR
34 ${collectivite_b} = Set Variable DRIEKAPELLEN
35 #
36 ${utilisateur_nom_01} = Set Variable Hermione JUAREZ
37 ${utilisateur_login_01} = Set Variable hjuarez
38 ${utilisateur_nom_02} = Set Variable Jorden BOWERS
39 ${utilisateur_login_02} = Set Variable jbowers
40 ${utilisateur_nom_03} = Set Variable Kiara COLE
41 ${utilisateur_login_03} = Set Variable kcole
42 ${utilisateur_nom_04} = Set Variable Elizabeth ORTIZ
43 ${utilisateur_login_04} = Set Variable eortiz
44 #
45 Depuis la page d'accueil admin admin
46 #
47 Ajouter la collectivité depuis le menu ${collectivite_a} mono
48 Ajouter la collectivité depuis le menu ${collectivite_b} mono
49 #
50 Ajouter l'utilisateur depuis le menu ${utilisateur_nom_01} [email protected] ${utilisateur_login_01} ${utilisateur_login_01} INSTRUCTEUR ${collectivite_a}
51 Ajouter l'utilisateur depuis le menu ${utilisateur_nom_02} [email protected] ${utilisateur_login_02} ${utilisateur_login_02} INSTRUCTEUR ${collectivite_a}
52 Ajouter l'utilisateur depuis le menu ${utilisateur_nom_03} [email protected] ${utilisateur_login_03} ${utilisateur_login_03} INSTRUCTEUR ${collectivite_a}
53 Ajouter l'utilisateur depuis le menu ${utilisateur_nom_04} [email protected] ${utilisateur_login_04} ${utilisateur_login_04} INSTRUCTEUR ${collectivite_b}
54 #
55 Ajouter l'instructeur depuis le menu ${utilisateur_nom_01} subdivision H ${utilisateur_nom_01}
56 Ajouter l'instructeur depuis le menu ${utilisateur_nom_02} subdivision H ${utilisateur_nom_02}
57 Ajouter l'instructeur depuis le menu ${utilisateur_nom_03} subdivision J ${utilisateur_nom_03}
58 Ajouter l'instructeur depuis le menu ${utilisateur_nom_04} subdivision H ${utilisateur_nom_04}
59 #
60 Ajouter l'affectation depuis le menu ${utilisateur_nom_01} null ${collectivite_a}
61 Ajouter l'affectation depuis le menu ${utilisateur_nom_02} Permis de construire comprenant ou non des démolitions ${collectivite_a}
62 Ajouter l'affectation depuis le menu ${utilisateur_nom_03} Permis de démolir ${collectivite_a}
63 Ajouter l'affectation depuis le menu ${utilisateur_nom_04} null ${collectivite_b}
64
65 # DI n°1 : Permis de démolir dans Collectivité A (niveau mono)
66 # => Affecté à l'instructeur '${utilisateur_nom_03}' (${utilisateur_login_03})
67 # => Division 'J'
68 #
69 &{args_petitionnaire_01} = Create Dictionary
70 ... particulier_nom=DUPONT
71 ... particulier_prenom=Jacques
72 ... om_collectivite=${collectivite_a}
73 #
74 &{args_demande_01} = Create Dictionary
75 ... dossier_autorisation_type_detaille=Permis de démolir
76 ... demande_type=Dépôt Initial
77 ... date_demande=12/04/2015
78 ... om_collectivite=${collectivite_a}
79 #
80 ${di_01} = Ajouter la nouvelle demande depuis le menu ${args_demande_01} ${args_petitionnaire_01}
81
82 # DI n°2 : Permis de construire pour une maison individuelle et / ou ses annexes dans Collectivité A (niveau mono)
83 # => Affecté à l'instructeur '${utilisateur_nom_01}' (${utilisateur_login_01})
84 # => Division 'H'
85 #
86 &{args_petitionnaire_02} = Create Dictionary
87 ... particulier_nom=VACHIER
88 ... particulier_prenom=Arthur
89 ... om_collectivite=${collectivite_a}
90 #
91 &{args_demande_02} = Create Dictionary
92 ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
93 ... demande_type=Dépôt Initial
94 ... date_demande=12/04/2015
95 ... om_collectivite=${collectivite_a}
96 #
97 ${di_02} = Ajouter la nouvelle demande depuis le menu ${args_demande_02} ${args_petitionnaire_02}
98
99 # DI n°3 : Permis de construire comprenant ou non des démolitions dans Collectivité A (niveau mono)
100 # => Affecté à l'instructeur '${utilisateur_nom_02}' (${utilisateur_login_02})
101 # => Division 'H'
102 #
103 &{args_petitionnaire_03} = Create Dictionary
104 ... particulier_nom=BRAY
105 ... particulier_prenom=Guy
106 ... om_collectivite=${collectivite_a}
107 #
108 &{args_demande_03} = Create Dictionary
109 ... dossier_autorisation_type_detaille=Permis de construire comprenant ou non des démolitions
110 ... demande_type=Dépôt Initial
111 ... date_demande=12/04/2015
112 ... om_collectivite=${collectivite_a}
113 #
114 ${di_03} = Ajouter la nouvelle demande depuis le menu ${args_demande_03} ${args_petitionnaire_03}
115
116 # DI n°4 : Permis de construire pour une maison individuelle et / ou ses annexes dans Collectivité B (niveau mono)
117 # => Affecté à l'instructeur '${utilisateur_nom_04}' (${utilisateur_login_04})
118 # => Division 'H'
119 #
120 &{args_petitionnaire_04} = Create Dictionary
121 ... particulier_nom=BOULAGE
122 ... particulier_prenom=Damien
123 ... om_collectivite=${collectivite_b}
124 #
125 &{args_demande_04} = Create Dictionary
126 ... dossier_autorisation_type_detaille=Permis de construire pour une maison individuelle et / ou ses annexes
127 ... demande_type=Dépôt Initial
128 ... date_demande=12/04/2015
129 ... om_collectivite=${collectivite_b}
130 #
131 ${di_04} = Ajouter la nouvelle demande depuis le menu ${args_demande_04} ${args_petitionnaire_04}
132
133 # On active l'option de notification par message
134 Modifier le paramètre option_notification_piece_numerisee true
135
136 # On ajoute un document numérisé par DI
137 &{document_numerise_values} = Create Dictionary
138 ... uid_upload=testImportManuel.pdf
139 ... date_creation=${date_jour}
140 ... document_numerise_type=autres pièces composant le dossier (A0)
141 Ajouter une pièce depuis le dossier d'instruction ${di_01} ${document_numerise_values}
142 Ajouter une pièce depuis le dossier d'instruction ${di_02} ${document_numerise_values}
143 Ajouter une pièce depuis le dossier d'instruction ${di_03} ${document_numerise_values}
144 Ajouter une pièce depuis le dossier d'instruction ${di_04} ${document_numerise_values}
145
146 ##
147 ## Cas d'usage
148 ##
149 ##
150 ##
151
152
153
154 #
155 ${widget_id} = Set Variable widget_4
156
157 # On se connecte en tant que utilisateur de niveau 2
158 Depuis la page d'accueil admin admin
159 # On vérifie qu'on a la collonne collectivité dans le listing tous les messages
160 Go To Submenu In Menu instruction messages_tous_retours
161 Page Title Should Be Instruction > Messages > Tous Les Messages
162 First Tab Title Should Be Message
163 Page Should Contain Les messages marqués comme 'non lu' qui concernent des dossiers d'instruction situés dans toutes les collectivités.
164 Element Should Contain css=#tab-messages_tous_retours table thead instructeur
165 Element Should Contain css=#tab-messages_tous_retours table thead division
166 Element Should Contain css=#tab-messages_tous_retours table thead collectivité
167 # On va sur le listing 'Tous les messages'
168 # Il doit contenir des retours des deux collectivités
169 Element Should Contain css=#tab-messages_tous_retours table ${collectivite_a}
170 Element Should Contain css=#tab-messages_tous_retours table ${collectivite_b}
171
172 # On se connecte en tant que "${utilisateur_login_01}" (Profil 'INSTRUCTEUR')
173 Depuis la page d'accueil ${utilisateur_login_01} ${utilisateur_login_01}
174 # On vérifie que les messages apparaissent bien sur le tableau de bord de l'instructeur
175 Element Should Contain css=#${widget_id} .widget-content-wrapper span.box-icon 1
176 # On clique sur le lien "Voir +" du widget
177 Click Element css=#${widget_id} .widget-footer a
178 # Le lien Voir + nous amène sur le listing 'Mes retours'
179 # Il ne doit contenir qu'un seul retour
180 Submenu In Menu Should Be Selected instruction messages_mes_retours
181 Page Title Should Be Instruction > Messages > Mes Messages
182 First Tab Title Should Be Message
183 Page Should Contain Les messages marqués comme 'non lu' qui concernent des dossiers d'instruction dont je suis l'instructeur.
184 Element Should Contain css=#tab-messages_mes_retours .pagination-text 1 - 1 enregistrement(s) sur 1
185 # On va sur le listing 'Messages de ma division'
186 # Il doit contenir deux retours
187 Go To Submenu In Menu instruction messages_retours_ma_division
188 Page Title Should Be Instruction > Messages > Messages De Ma Division
189 First Tab Title Should Be Message
190 Page Should Contain Les messages marqués comme 'non lu' qui concernent des dossiers d'instruction situés dans ma division.
191 Element Should Contain css=#tab-messages_retours_ma_division .pagination-text 1 - 2 enregistrement(s) sur 2
192 Element Should Contain css=#tab-messages_retours_ma_division table ${utilisateur_nom_02}
193 # On va sur le listing 'Tous les messages'
194 # Il doit contenir trois retours
195 Go To Submenu In Menu instruction messages_tous_retours
196 Page Title Should Be Instruction > Messages > Tous Les Messages
197 First Tab Title Should Be Message
198 Page Should Contain Les messages marqués comme 'non lu' qui concernent des dossiers d'instruction situés dans ma collectivité.
199 Element Should Contain css=#tab-messages_tous_retours .pagination-text 1 - 3 enregistrement(s) sur 3
200
201 # Filtre sur l'instructeur
202 Depuis la page d'accueil admin admin
203 Go To Tab om_widget
204 Click On Link messages_retours
205 Click On Form Portlet Action om_widget modifier
206 Input Text texte filtre=division
207 Click On Submit Button
208
209 # On se connecte en tant que "${utilisateur_login_01}" (Profil 'INSTRUCTEUR')
210 Depuis la page d'accueil ${utilisateur_login_01} ${utilisateur_login_01}
211 # On vérifie que les messages apparaissent bien sur le tableau de bord de l'instructeur
212 Element Should Contain css=#${widget_id} .widget-content-wrapper span.box-icon 2
213 # On clique sur le lien "Voir +" du widget
214 Click Element css=#${widget_id} .widget-footer a
215 # Le lien Voir + nous amène sur le listing 'Messages de ma division'
216 # Il doit contenir deux retours
217 Submenu In Menu Should Be Selected instruction messages_retours_ma_division
218 Page Title Should Be Instruction > Messages > Messages De Ma Division
219 First Tab Title Should Be Message
220 Page Should Contain Les messages marqués comme 'non lu' qui concernent des dossiers d'instruction situés dans ma division.
221 Element Should Contain css=#tab-messages_retours_ma_division .pagination-text 1 - 2 enregistrement(s) sur 2
222
223 # Filtre sur l'instructeur
224 Depuis la page d'accueil admin admin
225 Go To Tab om_widget
226 Click On Link messages_retours
227 Click On Form Portlet Action om_widget modifier
228 Input Text texte filtre=aucun
229 Click On Submit Button
230
231 # On se connecte en tant que "${utilisateur_login_01}" (Profil 'INSTRUCTEUR')
232 Depuis la page d'accueil ${utilisateur_login_01} ${utilisateur_login_01}
233 # On vérifie que les messages apparaissent bien sur le tableau de bord de l'instructeur
234 Element Should Contain css=#${widget_id} .widget-content-wrapper span.box-icon 3
235 # On clique sur le lien "Voir +" du widget
236 Click Element css=#${widget_id} .widget-footer a
237 # Le lien Voir + nous amène sur le listing 'Tous les messages'
238 # Il doit contenir trois retours
239 Submenu In Menu Should Be Selected instruction messages_tous_retours
240 Page Title Should Be Instruction > Messages > Tous Les Messages
241 First Tab Title Should Be Message
242 Page Should Contain Les messages marqués comme 'non lu' qui concernent des dossiers d'instruction situés dans ma collectivité.
243 Element Should Contain css=#tab-messages_tous_retours .pagination-text 1 - 3 enregistrement(s) sur 3
244
245 # Filtre sur l'instructeur
246 Depuis la page d'accueil admin admin
247 Go To Tab om_widget
248 Click On Link messages_retours
249 Click On Form Portlet Action om_widget modifier
250 Input Text texte filtre=instructeur
251 Click On Submit Button
252
253 # On se connecte en tant que Profil 'INSTRUCTEUR'
254 Depuis la page d'accueil ${utilisateur_login_04} ${utilisateur_login_04}
255 # On vérifie que les messages apparaissent bien sur le tableau de bord de l'instructeur
256 Element Should Contain css=#${widget_id} .widget-content-wrapper span.box-icon 1
257 # On clique sur le lien "Voir +" du widget
258 Click Element css=#${widget_id} .widget-footer a
259 # On clique sur le lien du dossier
260 Click Link ${di_04}
261 #
262 Wait Until Keyword Succeeds ${TIMEOUT} ${RETRY_INTERVAL} Element Should Be Visible css=#sousform-dossier_message #dossier_message
263 #
264 Page Title Should Contain ${di_04}
265 Page Title Should Contain BOULAGE DAMIEN
266
267 #
268 Portlet Action Should Be In SubForm dossier_message marquer_comme_lu
269 #
270 Click On SubForm Portlet Action dossier_message marquer_comme_lu
271 #
272 Valid Message Should Be In Subform Le message a été marqué comme lu.
273
274 #
275 Depuis la page d'accueil ${utilisateur_login_04} ${utilisateur_login_04}
276 #
277 # On vérifie que lorsqu'il n'y a aucun message, une information dans le widget 'Messages'
278 # l'indique et que le lien Voir + n'est pas présent
279 #
280 Element Should Contain css=#${widget_id} .widget-content-wrapper Aucun message non lu.
281 Element Should Not Contain css=#${widget_id} Voir +
282
283 #
284 # On clique sur les trois listings liés pour vérifier qu'il n'y a aucun résultat
285 #
286 Go To Submenu In Menu instruction messages_mes_retours
287 Page Title Should Be Instruction > Messages > Mes Messages
288 First Tab Title Should Be Message
289 Page Should Contain Les messages marqués comme 'non lu' qui concernent des dossiers d'instruction dont je suis l'instructeur.
290 Element Should Contain css=#tab-messages_mes_retours .pagination-text 1 - 0 enregistrement(s) sur 0
291 Element Should Not Contain css=#tab-messages_mes_retours table thead instructeur
292 Element Should Not Contain css=#tab-messages_mes_retours table thead division
293 Element Should Not Contain css=#tab-messages_mes_retours table thead collectivité
294 #
295 Go To Submenu In Menu instruction messages_retours_ma_division
296 Page Title Should Be Instruction > Messages > Messages De Ma Division
297 First Tab Title Should Be Message
298 Page Should Contain Les messages marqués comme 'non lu' qui concernent des dossiers d'instruction situés dans ma division.
299 Element Should Contain css=#tab-messages_retours_ma_division .pagination-text 1 - 0 enregistrement(s) sur 0
300 Element Should Contain css=#tab-messages_retours_ma_division table thead instructeur
301 Element Should Not Contain css=#tab-messages_retours_ma_division table thead division
302 Element Should Not Contain css=#tab-messages_retours_ma_division table thead collectivité
303 #
304 Go To Submenu In Menu instruction messages_tous_retours
305 Page Title Should Be Instruction > Messages > Tous Les Messages
306 First Tab Title Should Be Message
307 Page Should Contain Les messages marqués comme 'non lu' qui concernent des dossiers d'instruction situés dans ma collectivité.
308 Element Should Contain css=#tab-messages_tous_retours .pagination-text 1 - 0 enregistrement(s) sur 0
309 Element Should Contain css=#tab-messages_tous_retours table thead instructeur
310 Element Should Contain css=#tab-messages_tous_retours table thead division
311 Element Should Not Contain css=#tab-messages_tous_retours table thead collectivité
312
313

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26