/[openfoncier]/trunk/tests/012_utilisateurs_lies.robot
ViewVC logotype

Contents of /trunk/tests/012_utilisateurs_lies.robot

Parent Directory Parent Directory | Revision Log Revision Log


Revision 18876 - (show annotations)
Tue Oct 8 08:41:06 2024 UTC (3 months, 2 weeks ago) by softime
File size: 13738 byte(s)
merge: fusion de la branche d'intégration 6.8.0-develop dans le trunk

1 *** Settings ***
2 Documentation Test des fonctionnalités concernant utilisateurs liés
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 [Documentation] Permet de préparer les données permettant de
14 ... faire les vérifications nécessaires sur les utilisateurs liés
15
16 ${test_id} = Set Variable 012
17 Set Suite Variable ${test_id}
18
19 # Isolation du contexte
20 &{collectivite_values} = Create Dictionary
21 ... om_collectivite_libelle=Coll-${test_id}
22 ... departement=021
23 ... commune=367
24 ... insee=27367
25 ... direction_code=ER
26 ... direction_libelle=Coll-${test_id}
27 ... direction_chef=Chef
28 ... division_code=LR
29 ... division_libelle=Division LR
30 ... division_chef=Chef
31 ... guichet_om_utilisateur_nom=testg${test_id}plop
32 ... guichet_om_utilisateur_email=testg${test_id}@openads-test.fr
33 ... guichet_om_utilisateur_login=testg${test_id}
34 ... guichet_om_utilisateur_pwd=testg${test_id}
35 ... instr_om_utilisateur_nom=testi${test_id}
36 ... instr_om_utilisateur_email=testi${test_id}@openads-test.fr
37 ... instr_om_utilisateur_login=testi${test_id}
38 ... instr_om_utilisateur_pwd=testi${test_id}
39 ... code_entite=test${test_id}
40 ... acteur=SP-DOS-00${test_id}
41 Isolation d'un contexte ${collectivite_values}
42 Set Suite Variable ${collectivite_values}
43
44 # Liste des id des champs qui doivent être visible
45 @{liste_champ_visible} = Create List
46 ... nom
47 ... login
48 ... om_collectivite
49 ... om_profil
50 Set Suite Variable ${liste_champ_visible}
51 # Liste des id des champs qui ne doivent pas être visible
52 @{liste_champ_non_visible} = Create List
53 ... email
54 ... pwd
55 Set Suite Variable ${liste_champ_non_visible}
56
57 ${usr_lie} = Create Dictionary
58 ... nom=plop${test_id}
59 ... login=plop
60 ... om_collectivite=MARSEILLE
61 ... om_profil=INSTRUCTEUR
62 Set Suite Variable ${usr_lie}
63
64 ${usr_lie_2} = Create Dictionary
65 ... nom=plop${test_id}2
66 ... login=plop2
67 ... om_collectivite=MARSEILLE
68 ... om_profil=CELLULE SUIVI
69 Set Suite Variable ${usr_lie_2}
70
71 ${usr_lie_3} = Create Dictionary
72 ... nom=plop${test_id}3
73 ... login=${SPACE}plop3${SPACE}
74 ... om_profil=JURISTE
75 Set Suite Variable ${usr_lie_3}
76
77
78 Ajout d'un utilisateur lié
79 [Documentation] En tant qu'administrateur technique et fonctionnel de niveau 2 et
80 ... ayant la permission globale "lien_om_uilisateur_om_utilisateur"
81 ... je peux ajouter un utilisateur lié sur n'importe quel utilisateur principal.
82 ... Lors de l'ajout depuis l'onglet "Utilisateur lié" de l'utilisateur principal,
83 ... je ne peux saisir que le nom, le login, la collectivité et le profil.
84 ... Le profil est limité par rapport la hiérarchie comme lors de l'ajout d'un utilisateur principal.
85 # La permission lien_om_uitlisateur_om_utilisateur est déjà ajouté lorsqu'on démarre le test
86 Depuis la page d'accueil admin admin
87
88 Depuis l'onglet des utilisateurs liés ${collectivite_values.guichet_om_utilisateur_login}
89 Click On Add Button
90 Sleep 3
91
92 La liste des champs doit être visible dans le sousformulaire ${liste_champ_visible}
93 La liste des champs ne doit pas être visible dans le sousformulaire ${liste_champ_non_visible}
94
95 # On vérifie que la hierarchie est respecté (guichet unique ne peut pas avoir d'utilisateur admin)
96 @{labels_profil} = Get List Items css=#om_profil
97 List Should Not Contain Value ${labels_profil} ADMINISTRATEUR TECHNIQUE ET FONCTIONNEL
98 Select From List By Label css=#om_collectivite Choisir Collectivité
99 Click On Submit Button
100 Error Message Should Contain Le champ login est obligatoire
101 Error Message Should Contain Le champ nom est obligatoire
102 Error Message Should Contain Le champ Collectivité est obligatoire
103 Error Message Should Contain Le champ Profil est obligatoire
104
105 Saisir l'utilisateur lié depuis l'utilisateur principal ${usr_lie}
106
107 Click On Submit Button
108
109 Valid Message Should Contain Vos modifications ont bien été enregistrées.
110
111
112 Ajout d'un utilisateur avec espace en début et fin dans son login
113 [Documentation] On vérifie que malgré un espace ajouté dans le login (en début/fin), on
114 ... réussit tout de même à se connecter au logiciel et qu'il n'y a aucun problème, avec un utilisateur 'classique'
115 ... et un utilisateur lié, avec lien l'utilisateur 'classique'.
116 ... L'espace sera supprimé via un traitement, et donc ne devrait pas poser de problème.
117 Depuis la page d'accueil admin admin
118
119 # Vérification sur un utilisateur "classique"
120 Ajouter l'utilisateur depuis le menu testons [email protected] ${SPACE}testonslogin${SPACE} mypasswd ADMINISTRATEUR TECHNIQUE ET FONCTIONNEL MARSEILLE
121 Depuis la page d'accueil testonslogin mypasswd
122 La page ne doit pas contenir d'erreur
123
124 # Vérification sur un utilisateur lié
125 Ajouter l'utilisateur lié testonslogin ${usr_lie_3}
126 Depuis le contexte de l'utilisateur lié testonslogin ${usr_lie_3.nom}
127 La page ne doit pas contenir d'erreur
128
129
130 Consultation d'un utilisateur lié
131 [Documentation] Un fois ajouté je peux modifier ou supprimer l'utilisateur lié.
132 ... J'ai également une autre action me permettant d'être redirigé vers le formulaire
133 ... de l'utilisateur lié.
134 ...
135 ... Depuis le formulaire de l'utilisateur lié j'ai accès aux onglets pour paramétrer
136 ... l'instructeur, les tiers, les services ou encore les groupes, un utilisateur lié ne
137 ... peux pas avoir d'utilisateurs liés.
138 ...
139 ... Dans ce formulaire j'ai accès à d'autres informations tel que l'adresse mail qui est
140 ... récupérée de l'utilisateur principal et qui est mise à jour automatiquement si celle
141 ... l'utilisateur principal est modifiée. J'ai également l'information de qui est l'utilisateur
142 ... principal de cet utilisateur lié.
143 Depuis la page d'accueil admin admin
144
145 Depuis le contexte de l'utilisateur lié ${collectivite_values.guichet_om_utilisateur_nom} ${usr_lie.login}
146
147 Portlet Action Should Be In SubForm om_utilisateur update_linked_user
148 Portlet Action Should Be In SubForm om_utilisateur delete_linked_user
149 Portlet Action Should Be In SubForm om_utilisateur redirect_linked_user_form
150
151 Click On SubForm Portlet Action om_utilisateur redirect_linked_user_form
152
153 On clique sur l'onglet instructeur Instructeur
154 On clique sur l'onglet lien_om_utilisateur_tiers_consulte Lien Utilisateur / Tiers
155 On clique sur l'onglet lien_service_om_utilisateur Lien Service/utilisateur
156 On clique sur l'onglet lien_om_utilisateur_groupe Groupe
157
158 Form Value Should Be css=#email ${collectivite_values.guichet_om_utilisateur_email}
159 Form Value Should Be css=#om_utilisateur_princ ${collectivite_values.guichet_om_utilisateur_nom}
160
161 ${email_user_princ} = Create Dictionary
162 ... email=${collectivite_values.guichet_om_utilisateur_email}plopplop
163 Modifier l'utilisateur depuis le menu ${collectivite_values.guichet_om_utilisateur_nom} ${email_user_princ}
164
165 Depuis le contexte de l'utilisateur lié ${collectivite_values.guichet_om_utilisateur_nom} ${usr_lie.login}
166 Click On SubForm Portlet Action om_utilisateur redirect_linked_user_form
167
168 Form Value Should Be css=#email ${email_user_princ.email}
169
170
171 Modification d'un utilisateur lié
172 [Documentation] La modification est limitée au nom, collectivité et profil.
173 Depuis la page d'accueil admin admin
174
175 Depuis le contexte de l'utilisateur lié ${collectivite_values.guichet_om_utilisateur_nom} ${usr_lie.login}
176 Click On SubForm Portlet Action om_utilisateur update_linked_user
177
178 ${user_update} = Create Dictionary
179 ... nom=${test_id}plopplop
180
181 Saisir l'utilisateur lié depuis l'utilisateur principal ${user_update}
182
183 Click On Submit Button
184
185 Valid Message Should Contain Vos modifications ont bien été enregistrées.
186
187
188 Vérification du changement d'utilisateur
189 [Documentation] En tant qu'utilisateur ayant des utilisateurs liés, en haut à droite de l'application
190 ... j'ai accès à l'action "Utilisateurs liés" qui ouvre un formulaire dans une fenêtre modale.
191 ... La fenêtre modale me présente une liste à choix constitué des logins des utilisateurs liés et de l'utilisateur principal.
192 ... Lorsque je choix un des logins, je suis redirigé vers le tableau de bord mais en tant que l'utilisateur que j'ai sélectionné.
193 ... Si l'utilisateur sélectionné à un autre profil alors j'ai le tableau de bord de ce profil.
194 ... Si l'utilisateur sélectionné fait partie d'une autre collectivité alors j'ai accès aux dossiers de cette collectivité.
195 ... Je peux changer d'utilisateur également depuis un utilisateur lié pour revenir à mon utilisateur principal ou pour sélectionner
196 ... un autre utilisateur lié.
197 ... Si je me déconnecte, je ne peux pas me reconnecter avec un utilisateur lié mais seulement depuis un utilisateur principal.
198 Depuis la page d'accueil ${collectivite_values.guichet_om_utilisateur_login} ${collectivite_values.guichet_om_utilisateur_pwd}
199
200 Click On Link css=#actions .action-change_linked_users
201 Select From List By Label css=#sousform-change_linked_users #om_utilisateur_linked ${usr_lie.login}
202 Click Element Until No More Element css=#sousform-change_linked_users #change_linked_users_action_valid
203
204 Element Should Contain css=#actions .action-login ${usr_lie.login}
205
206 # Le tableau de bord a changé, on récupère le widget d'info du profil
207 Element Should Contain css=#dashboard .col3 #column_1 #widget_2 .widget-header h3 Infos profil
208
209
210 Click On Link css=.action-change_linked_users
211 Select From List By Label css=#om_utilisateur_linked ${collectivite_values.guichet_om_utilisateur_login}
212 Click Element Until No More Element css=#sousform-change_linked_users #change_linked_users_action_valid
213
214 Element Should Contain css=#actions .action-login ${collectivite_values.guichet_om_utilisateur_login}
215
216
217 Listing et recherche avancée concernant les utilisateurs liés
218 [Documentation] Depuis le listing des utilisateurs, j'ai accès à une nouvelle colonne "utilisateurs liés"
219 ... et à deux nouvelles recherches avancées "Utilisateur principal" et "Utilisateurs liés".
220 ...
221 ... La nouvelle colonne renseigne deux informations, sur la ligne d'un utilisateur principal elle indique si
222 ... celui-ci possède ou non des utilisateurs liés, sur la ligne d'un utilisateur lié elle indique le nom de
223 ... son utilisateur principal.
224 ...
225 ... La recherche avancée "Utilisateur principal" est une liste à choix des utilisateurs ayant un ou des
226 ... utilisateurs liés, en sélectionner un permet de filtrer le listing pour n'afficher que les utilisateurs
227 ... liés à cet utilisateur principal.
228 ...
229 ... La recherche avancée "Utilisateurs liés" est une liste à choix entre "", "Oui" ou "Non", elle permet de
230 ... filtrer le listing pour n'afficher que les utilisateur principal ayant ou non des utilisateurs liés.
231 Depuis la page d'accueil admin admin
232
233 ${advs_search_1} = Create Dictionary
234 ... utilisateur_princ=${collectivite_values.guichet_om_utilisateur_nom}
235 Rechercher des utilisateurs ${advs_search_1}
236
237 Element Should Contain css=.tab-data ${test_id}plopplop
238 Element Should Contain css=.tab-data ${usr_lie.login}
239 # Il est possible que la colonne change de place, il faudra alors changer la vérif ici
240 Element Should Contain css=.tab-data .lastcol ${collectivite_values.guichet_om_utilisateur_nom}
241
242 ${advs_search_1} = Create Dictionary
243 ... utilisateurs_lies=Oui
244 Rechercher des utilisateurs ${advs_search_1}
245
246 Element Should Contain css=.tab-data ${collectivite_values.guichet_om_utilisateur_nom}
247 Element Should Contain css=.tab-data ${collectivite_values.guichet_om_utilisateur_login}
248 # Il est possible que la colonne change de place, il faudra alors changer la vérif ici
249 Element Should Contain css=.tab-data .lastcol Oui
250
251
252 Suppression d'un utilisateur lié
253 [Documentation] En tant qu'administrateur technique et fonctionnel de niveau 2 et ayant la permission globale
254 ... "lien_om_uitlisateur_om_utilisateur", je peux supprimer un utilisateur principal ayant des utilisateurs liés,
255 ... cela entraîne la suppression de tous les utilisateurs liés.
256 ...
257 ... La suppression d'un utilisateur liés n'a aucun impact sur l'utilisateur principal, ni sur les autres utilisateurs
258 ... liés sur le même utilisateur.
259 Depuis la page d'accueil admin admin
260
261 Ajouter l'utilisateur lié ${collectivite_values.guichet_om_utilisateur_nom} ${usr_lie_2}
262
263 Depuis le contexte de l'utilisateur lié ${collectivite_values.guichet_om_utilisateur_nom} ${usr_lie.login}
264 Click On SubForm Portlet Action om_utilisateur delete_linked_user
265 Click On Submit Button
266 Valid Message Should Contain La suppression a été correctement effectuée.
267
268 Supprimer l'utilisateur depuis le menu ${collectivite_values.guichet_om_utilisateur_nom}
269
270 # vérification que l'utilisateur lié est bien supprimé
271 ${advs_search_1} = Create Dictionary
272 ... login=${usr_lie_2.login}
273 Rechercher des utilisateurs ${advs_search_1}
274
275 Page Should Contain Aucun enregistrement.

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26