/[openfoncier]/trunk/tests/testConsultations.php
ViewVC logotype

Annotation of /trunk/tests/testConsultations.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3237 - (hide annotations)
Fri Jan 9 17:36:33 2015 UTC (10 years ago) by nhaye
File size: 31883 byte(s)
Ajout d'une tempo pour les tests

1 fmichon 1735 <?php
2     /**
3     *
4     *
5     * @package openfoncier
6     * @version SVN : $Id$
7     */
8    
9     //
10     require_once "base.php";
11    
12     /**
13     *
14     */
15 vpihour 2077 class Consultations extends Base2TestCase {
16 fmichon 1735
17 vpihour 3201 public function test_01_ajout_consultation_simple_par_l_instructeur() {
18 vpihour 2077
19 fmichon 1735 // On se connecte en tant que "instr"
20     $this->login("instr", "instr");
21     // On clique sur le lien "Mes encours" dans le menu
22 vpihour 2077 $this->byLinkText("Mes Encours")->click();
23 fmichon 1735 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
24     $this->verifyNoErrors();
25     // On clique sur le lien "AZ0130551200001P0" dans le tableau
26 softime 2112 $this->byLinkText("AZ 013055 12 00001P0")->click();
27 fmichon 1735 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
28     $this->verifyNoErrors();
29     // On clique sur l'onglet "Consultation(s)"
30 vpihour 2077 $this->byId("consultation")->click();
31 fmichon 1735 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
32     $this->verifyNoErrors();
33     // On clique sur le lien "Ajouter" dans le tableau
34 softime 2438 $this->byId("action-soustab-consultation-corner-ajouter")->click();
35 fmichon 1735 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
36     $this->verifyNoErrors();
37     // On vérifie que la date du jour est pré-remplie dans le champs "date d'envoi"
38 vpihour 3156 $this->assertEquals(date("d/m/Y"), $this->byId("date_envoi")->attribute('value'));
39 fmichon 1735 // On clique sur le bouton "Ajouter" du formulaire sans sélectionner de service
40 fmichon 2221 $this->byXPath("//input[@value='Ajouter']")->click();sleep(1);
41 fmichon 1735 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
42     $this->verifyNoErrors();
43     // On vérifie que le message d'erreur est présent
44 vpihour 2077 $this->assertRegExp('/.*SAISIE NON ENREGISTRÉE.*/', $this->byCssSelector("#sousform-consultation .message .text")->text());
45 fmichon 1736 // On sélectionne le service "59.01 Direction de l'Eau et de l'Assainissement"
46 vpihour 2077 $this->select($this->byId("service"))->selectOptionByValue("1");
47 fmichon 1735 // On saisit une date d'envoi vide
48 vpihour 2077 $this->byId("date_envoi")->clear();
49 fmichon 1735 // On valide l'alerte javascript qui nous indique que la date saisie est invalide
50 vpihour 2077 $this->assertEquals("La date saisie n'est pas valide", $this->alertText());
51     $this->acceptAlert();
52 fmichon 1735 // On clique sur le bouton "Ajouter" du formulaire
53 fmichon 2221 $this->byXPath("//input[@value='Ajouter']")->click();sleep(1);
54 fmichon 1735 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
55     $this->verifyNoErrors();
56     // On vérifie que le message d'erreur est présent
57 vpihour 3133 $this->assertRegExp('/.*SAISIE NON ENREGISTRÉE.*/', $this->byCssSelector("#sousform-consultation .message .text")->text());sleep(2);
58 fmichon 1735 // On saisit une date d'envoi vide
59 vpihour 3134 $this->byId("date_envoi")->value("20/".date("m/Y"));sleep(1);
60 softime 2438 // On ouvre le calendrier
61 vpihour 3134 /*$this->byCssSelector(".ui-datepicker-trigger")->click();sleep(2);
62 softime 2438 // On clique sur le "20" du mois encours
63 vpihour 3134 $this->byLinkText("20")->click();sleep(2);*/
64 fmichon 1735 // On clique sur le bouton "Ajouter" du formulaire
65 softime 2438 $this->byXPath("//input[@value='Ajouter']")->click();sleep(5);
66 fmichon 1735 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
67 fmichon 2228 $this->verifyNoErrors();sleep(1);
68 softime 2081 // On vérifie que le message de notification de mail est présent
69     $this->assertRegExp("/.*Envoi d'un mail de notification au service.*/", $this->byCssSelector("#sousform-consultation .message .text")->text());
70     // On vérifie le message de validation
71 vpihour 2077 $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-consultation .message .text")->text());
72 fmichon 1735 // On clique sur le bouton retour
73 vpihour 2077 $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();
74 fmichon 1735 // On vérifie que nous avons bien 1 consultation affichée
75 vpihour 3151 $this->assertRegExp('/.*1 \- 2 enregistrement\(s\) sur 2*/', $this->byCssSelector("#sousform-consultation .pagination-text")->text());
76 fmichon 1735 // On se déconnecte
77     $this->logout();
78     }
79 fmichon 1753
80 vpihour 3201 public function test_02_ajout_consultation_multiple_par_l_instructeur() {
81 vpihour 2077
82 fmichon 1735 // On se connecte en tant que "instr"
83     $this->login("instr", "instr");
84 fmichon 1738 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
85     $this->verifyNoErrors();
86 fmichon 1735 // On clique sur le lien "Mes encours" dans le menu
87 vpihour 2077 $this->byLinkText("Mes Encours")->click();
88 fmichon 1735 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
89     $this->verifyNoErrors();
90     // On clique sur le lien "AZ0130551200001P0" dans le tableau
91 softime 2112 $this->byLinkText("AZ 013055 12 00001P0")->click();
92 fmichon 1735 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
93     $this->verifyNoErrors();
94     // On clique sur l'onglet "Consultation(s)"
95 vpihour 2077 $this->byId("consultation")->click();
96 fmichon 1735 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
97     $this->verifyNoErrors();
98     // On clique sur le lien "Ajouter multiples" dans le tableau
99 vpihour 2077 $this->byXPath("//div[@id='sousform-consultation']/table/thead/tr/th/a[2]/span")->click();
100 fmichon 1735 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
101     $this->verifyNoErrors();
102     // On clique sur le bouton "Ajouter" du formulaire sans sélectionner de service
103 vpihour 2077 $this->byId("button_val")->click();
104 fmichon 1811 // On vérifie qu'une alerte javascript nous indique qu'il y a une erreur de saisie
105 vpihour 2077 $this->assertEquals("Veuillez choisir au moins un service et une date d envoi", $this->alertText());
106     $this->acceptAlert();
107 fmichon 1735 // On sélectionne quatre services
108 vpihour 2077 $this->byId("t10_572_0_")->click();
109     $this->byId("t10_575_0_")->click();
110 vpihour 3207 $this->byId("t2_13_0_")->click();
111 vpihour 2077 $this->byId("t10_542_0_")->click();
112 fmichon 1735 // On les ajoute à la sélection
113 vpihour 2077 $this->byId("add-ser-them")->click();
114 fmichon 1735 // On sélectionne un des services sélectionnés
115 vpihour 2077 $this->byCssSelector("div[name=\"t10_542_0_\"]")->click();
116 fmichon 1735 // On l'enlève de la sélection
117 vpihour 2077 $this->byId("del-ser-them")->click();
118 fmichon 1735 // On coche la case pour la consultation papier pour un des services
119 vpihour 2077 $this->byCssSelector("div.cell2 > div > input.t10_575_0_")->click();
120 fmichon 1735 // On clique sur le bouton "Ajouter" du formulaire
121 vpihour 2077 $this->byId("button_val")->click();
122 fmichon 1735 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
123     $this->verifyNoErrors();
124     // On vérifie que le message de validation est présent avec le bon nombre de consultations
125 vpihour 2077 $this->assertRegExp('/.*3 service\(s\) sélectionné\(s\) dont 1 consultation\(s\) papier.*/', $this->byCssSelector("#sousform-consultation .message .text")->text());
126 fmichon 1735 // On vérifie que nous avons bien 4 consultations affichées
127 vpihour 3151 $this->assertRegExp('/.*1 - 5 enregistrement\(s\) sur 5*/', $this->byCssSelector("#sousform-consultation .pagination-text")->text());
128 fmichon 1735 // On se déconnecte
129     $this->logout();
130     }
131 fmichon 1753
132 vpihour 3201 public function test_03_reponse_a_une_consultation_par_le_service_consulte() {
133 vpihour 2077
134 fmichon 2181 // On se connecte en tant que "consu"
135     // !!! Attention on n'utilise pas la méthode login standard car
136     // l'utilisateur est redirigé automatiquement vers un autre écran
137     // sans voir le message de connexion !!!
138     // On se connecte
139     $this->connect("consu", "consu");
140     // Allonge le temps d'attente lors de la recherche d'élément
141     $this->timeouts()->implicitWait(10000);
142 fmichon 1738 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
143 fmichon 2181 $this->verifynoerrors();
144 fmichon 2210 // On temporise pour laisser le temps au javascript de redirection
145     // de faire son travail
146     sleep(1);
147     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
148     $this->verifynoerrors();
149 fmichon 1736 // On clique sur le lien "AZ0130551200001P0" dans le tableau
150 vpihour 3207 $this->byLinkText("59.13")->click();
151 fmichon 1736 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
152     $this->verifyNoErrors();
153 fmichon 1811 // On clique sur le lien "Saisir un avis" dans le portlet
154 vpihour 2077 $this->byXPath("//div[@id='portlet-actions']/ul/li/a/span")->click();
155 fmichon 1736 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
156     $this->verifyNoErrors();
157 fmichon 1811 // On vérifie que le sous-titre de l'élément affiché est correct
158 vpihour 3207 $this->assertEquals("9", $this->byCssSelector("#sformulaire #consultation")->attribute('value'));
159 fmichon 1811 // On clique sur le bouton "Modifier" du formulaire sans saisir de retour d'avis
160 vpihour 2077 $this->byXPath("//input[@value='Modifier']")->click();
161     sleep(1);
162 fmichon 1736 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
163     $this->verifyNoErrors();
164     // Retour à la liste des demandes
165 vpihour 2077 $this->byCssSelector("#sformulaire a.retour")->click();
166 fmichon 1736 // Accès au dossier en visualisation
167 softime 2112 $this->byLinkText("AZ 013055 12 00001P0")->click();
168 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
169 fmichon 1736 $this->verifyNoErrors();
170     // Accès à l'onglet des consultations
171 vpihour 2077 $this->byXPath("//div[@id='portlet-actions']/ul/li/a/span")->click();
172 vpihour 3207 $this->assertEquals("9", $this->byCssSelector("#sformulaire #consultation")->attribute('value'));
173 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
174 fmichon 1736 $this->verifyNoErrors();
175     // Saisie de valeurs
176 vpihour 2077 $this->select($this->byId("avis_consultation"))->selectOptionByLabel("Defavorable");
177     $this->byId("motivation")->value("Pas motivé");
178 fmichon 1736 // Upload de fichier
179 vpihour 2077 $this->byCssSelector("span.ui-icon.ui-icon-arrowthickstop-1-s")->click();
180 fmichon 1736 // Validation sans saisie de fichier
181 vpihour 2077 $this->byName("submit")->click();
182 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
183 fmichon 1736 $this->verifyNoErrors();
184 fmichon 1811 //
185 vpihour 2077 $this->assertRegExp('/.*Vous devez sélectionner un fichier.*/', $this->byCssSelector("#upload-container .message .text")->text());
186 fmichon 1736 // Saisie de fichier
187 vpihour 2077 $this->byName("userfile[]")->value(dirname(__FILE__)."/binary_files/lettre_rar16042013124515.pdf");
188     $this->byName("submit")->click();
189 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
190 fmichon 1736 $this->verifyNoErrors();
191     // Validation de la modification de la demande d'avis
192 vpihour 2077 $this->byXPath("//input[@value='Modifier']")->click();
193 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
194 fmichon 1736 $this->verifyNoErrors();
195 fmichon 1811 // On vérifie que le message de validation est présent
196 vpihour 2077 $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sformulaire .message .text")->text());
197 fmichon 1811 // On clique sur le lien retour
198 vpihour 2077 $this->byCssSelector("#sformulaire a.retour")->click();
199 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
200 fmichon 1736 $this->verifyNoErrors();
201     // Vérification que la demande d'avis n'est plus presente
202 vpihour 2077 try {
203 vpihour 3207 $el = $this->byLinkText("59.13");
204 vpihour 2077 $this->fail('Cet élément ne devrait pas exister.');
205     } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
206     $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
207     }
208 fmichon 1811 // On se déconnecte
209 fmichon 1736 $this->logout();
210     }
211 fmichon 1753
212    
213 vpihour 3201 public function test_04_reponse_a_une_consultation_par_la_cellule_suivi() {
214 vpihour 2077
215 fmichon 1736 // On se connecte en tant que "suivi"
216     $this->login("suivi", "suivi");
217 fmichon 1738 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
218     $this->verifyNoErrors();
219 fmichon 1736 //
220 vpihour 2077 $this->byLinkText("Retours De Consultation")->click();
221 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
222 fmichon 1736 $this->verifyNoErrors();
223 fmichon 1811 // On vérifie que le titre de la page est correct
224 vpihour 2077 $this->assertRegExp('/.*Retours De Consultation.*/', $this->byCssSelector("#title h2")->text());
225 fmichon 1811 // On clique sur le bouton "Valider" sans saisir de code barres
226 vpihour 2077 $this->byXPath("//input[@value='Valider']")->click();
227 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
228 fmichon 1736 $this->verifyNoErrors();
229 fmichon 1811 //
230 vpihour 2077 $this->assertRegExp('/.*Veuiller saisir un code barres de consultation.*/', $this->byCssSelector(".message .text")->text());
231 fmichon 1736 //
232 vpihour 2077 $this->byId("code_barres")->value("aze");
233     $this->byXPath("//input[@value='Valider']")->click();
234 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
235 fmichon 1736 $this->verifyNoErrors();
236 vpihour 2077 $this->assertRegExp('/.*Cette consultation n\'existe pas.*/', $this->byCssSelector(".message .text")->text());
237 fmichon 1736 // XXX Aller plus loin dans les cas d'utilisation lors de la saisie
238 vpihour 3206 $this->byId("code_barres")->value("120000000006");
239 vpihour 2077 $this->byXPath("//input[@value='Valider']")->click();
240 nhaye 3237 sleep(1);
241 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
242 fmichon 1736 $this->verifyNoErrors();
243 fmichon 1811 // On vérifie que le titre de la page est correct
244 vpihour 3207 $this->assertEquals("6", $this->byId("consultation")->attribute('value'));
245 vpihour 3156 $this->assertEquals("AZ 013055 12 00001P0", $this->byId("dossier_libelle")->attribute('value'));
246 vpihour 2077 $this->select($this->byId("avis_consultation"))->selectOptionByLabel("Favorable");
247     $this->byId("motivation")->value("blablabla");
248 fmichon 1736 // Upload de fichier
249 vpihour 2077 $this->byCssSelector("span.ui-icon.ui-icon-arrowthickstop-1-s")->click();
250 fmichon 1736 // Validation sans saisie de fichier
251 vpihour 2077 $this->byName("submit")->click();
252 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
253 fmichon 1736 $this->verifyNoErrors();
254 vpihour 2077 $this->assertRegExp('/.*Vous devez sélectionner un fichier.*/', $this->byCssSelector("#upload-container .message .text")->text());
255 fmichon 1736 // Saisie de fichier
256 vpihour 2077 $this->byName("userfile[]")->value(dirname(__FILE__)."/binary_files/lettre_rar16042013124515.pdf");
257     $this->byName("submit")->click();
258 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
259 fmichon 1736 $this->verifyNoErrors();
260     // Visualisation du fichier
261 vpihour 2077 $this->byCssSelector("span.ui-icon.ui-icon-newwin")->click();
262 vpihour 3206 $this->assertRegExp('/.*lettre_rar16042013124515.pdf.*/', $this->byId("fichier_upload")->attribute('value'));
263 vpihour 3151 //On ferme l'overlay
264     $this->byCssSelector(".ui-dialog .ui-icon-closethick")->click();
265 fmichon 1736 //
266 vpihour 2077 $this->byXPath("//input[@value='Modifier']")->click();
267 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
268 fmichon 1736 $this->verifyNoErrors();
269 fmichon 1811 // On vérifie que le message de validation est présent
270 vpihour 2077 $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector(".message .text")->text());
271 fmichon 1811 // On clique sur le lien retour
272 vpihour 2077 $this->byLinkText("Retour")->click();
273 fmichon 1811 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
274 fmichon 1736 $this->verifyNoErrors();
275 fmichon 1811 // On vérifie que le titre de la page est correct
276 vpihour 2077 $this->assertStringEndsWith('app/suivi_retours_de_consultation.php', $this->url());
277 fmichon 1811 // On se déconnecte
278 fmichon 1736 $this->logout();
279     }
280 fmichon 1738
281 vpihour 3201 public function test_05_gestion_de_la_consultation_par_l_instructeur() {
282 vpihour 2077
283 fmichon 1738 // On se connecte en tant que "instr"
284     $this->login("instr", "instr");
285     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
286     $this->verifyNoErrors();
287     // On vérifie que les consultations apparaissent bien sur le tableau de bord de l'instructeur
288 vpihour 2077 $this->assertEquals("2",$this->byCssSelector("#widget_3 .widget-content-wrapper .message .text .bold")->text());
289 fmichon 1738 // On clique sur le lien "Mes retours" dans le menu
290 vpihour 2077 $this->byLinkText("Mes Retours")->click();
291 fmichon 1738 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
292     $this->verifyNoErrors();
293 fmichon 1811 // On vérifie que le titre de la page est correct
294 vpihour 2077 $this->assertEquals("Consultation_mes_retours", $this->byXPath("//a[@href='#tabs-1']")->text());
295 fmichon 1738 // On vérifie que les deux consultations sont présentes dans le tableau
296 vpihour 2077 $this->assertEquals("1 - 2 enregistrement(s) sur 2", $this->byClassName("pagination-text")->text());
297 fmichon 1745 // On clique sur le lien "59.01 Direction de l'Eau et de l'Assainissement" dans le tableau
298 vpihour 2077 $this->byLinkText("59.01 Direction de l'Eau et de l'Assainissement")->click();
299 fmichon 2213 // On temporise pour laisser un peu de temps à l'onglet de se charger
300     // (accès direct)
301     sleep(2);
302 fmichon 1745 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
303     $this->verifyNoErrors();
304     // On vérifie que le formulaire de la consultation s'est bien ouvert
305 vpihour 3207 $this->assertEquals("6", $this->byCssSelector("#sousform-consultation #consultation")->text());
306 fmichon 1745 // On clique sur le lien "Marquer comme lu" dans le portlet
307 fmichon 2213 $this->byId("action-sousform-consultation-lu")->click();
308 fmichon 1745 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
309     $this->verifyNoErrors();
310     // On vérifie que le message de validation est présent avec le bon nombre de consultations
311 vpihour 2077 $this->assertRegExp('/.*Mise a jour effectue avec succes.*/', $this->byCssSelector(".message .text")->text());
312 fmichon 1745 // On clique sur le lien retour
313 vpihour 3137 $this->byCssSelector("#sousform-consultation #sformulaire div.formControls a.retour")->click();
314 fmichon 1745 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
315     $this->verifyNoErrors();
316     // On vérifie que le nombre de consultations est le bon
317 vpihour 3151 $this->assertEquals("1 - 5 enregistrement(s) sur 5", $this->byClassName("pagination-text")->text());
318 fmichon 1745 // On clique sur le lien "Tableau de bord" dans le menu
319 vpihour 2077 $this->byLinkText("Tableau de bord")->click();
320 fmichon 1745 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
321     $this->verifyNoErrors();
322     // On vérifie que les consultations apparaissent bien sur le tableau de bord de l'instructeur
323 vpihour 2077 $this->assertEquals("1",$this->byCssSelector("#widget_3 .widget-content-wrapper .message .text .bold")->text());
324 fmichon 1738 // On se déconnecte
325     $this->logout();
326     }
327 vpihour 2870
328     /*
329     * Cette méthode teste l'envoi de message au référentiel ERP lors de l'ajout
330     * de consultation
331     */
332     public function test_06_envoi_de_message_erp(){
333    
334 vpihour 2871 // On se connecte en tant que "admin"
335 vpihour 2870 $this->login("admin", "admin");
336     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
337     $this->verifyNoErrors();
338    
339     //{{{ On ajoute trois services
340     //On clique sur Paramétrage
341     $this->byLinkText("Paramétrage")->click();
342     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
343     $this->verifyNoErrors();
344     //On clique sur Service
345     $this->byLinkText("Service")->click();
346     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
347     $this->verifyNoErrors();
348     //Initialisation de la variable
349     $services = array();
350     //On ajoute trois services
351     for ($i = 1 ; $i < 4 ; $i++){
352     $services[] = $this->addService("test_erp_".$i, "test_service_erp_".$i);
353     }
354     //}}}
355    
356     //{{{ On change trois variables erp_service_accessibilite,
357     // erp_service_securite et erp_service_conformite
358 vpihour 3151 //Retour sur le tableau de bord
359     $this->byLinkText("Tableau de bord")->click();
360 vpihour 2870 //On clique sur Administration
361     $this->byLinkText("Administration")->click();
362     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
363     $this->verifyNoErrors();
364     //On clique sur Paramètre
365     $this->byLinkText("Paramètre")->click();
366     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
367     $this->verifyNoErrors();
368     $erp_service_accessibilite = $this->changeParametreServiceErp("erp_service_accessibilite", $services[0]);
369     $erp_service_securite = $this->changeParametreServiceErp("erp_service_securite", $services[1]);
370     $erp_service_conformite = $this->changeParametreServiceErp("erp_service_conformite", $services[2]);
371    
372     ///}}}
373    
374     // On se déconnecte
375     $this->deconnect();
376    
377     // On se connecte en tant que "instr"
378     $this->login("guichet", "guichet");
379     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
380     $this->verifyNoErrors();
381     //{{{On ajoute un dossier d'instruction
382     //On clique sur Nouveau Dossier
383     $this->byLinkText("Nouveau Dossier")->click();
384     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
385     $this->verifyNoErrors();
386     //On choisit le type détaillé de dossier d'autorisation
387     $this->select($this->byName("dossier_autorisation_type_detaille"))->selectOptionByValue("1");
388     //On choisit le type de demande - Dépôt initial
389     $this->select($this->byName("demande_type"))->selectOptionByValue("1");
390     //On clique sur "Saisir le pétitionnaire principal"
391     $this->byId("add_petitionnaire_principal")->click();
392     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
393     $this->verifyNoErrors();
394     //On saisie le nom du pétitionnaire principal
395     $this->byId("particulier_nom")->value("test");
396     // On clique sur ajouter
397     $this->byCssSelector("div#sformulaire form div.formControls input.om-button")->click();sleep(1);
398     // On vérifie qu'il n'y ait pas d'erreur
399     $this->verifynoerrors();
400     //On vérifie que le pétitionnaire s'est bien ajouté
401     // On vérifie le message
402     $this->assertContains("Vos modifications ont bien été enregistrées.",$this->byCssSelector("#sousform-petitionnaire .message")->text());
403     // On clique sur le bouton retour
404     $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);
405     // On vérifie que le text est présent
406     $this->assertContains("test",$this->byCssSelector("#petitionnaire_principal_delegataire .synthese_demandeur")->text());
407     // On clique sur ajouter
408     $this->byXPath("//input[@value='Ajouter']")->click();
409     // On vérifie qu'il n'y ait pas d'erreur
410     $this->verifynoerrors();
411     // On vérifie le message
412     $this->assertContains("Création du dossier",$this->byCssSelector(".message")->text());
413     //On récupère le numéro de dossier d'instruction créé
414     preg_match('/(PC)[0-9 ]*(P0)/', $this->byCssSelector("#tabs-1 .message")->text(), $dossier);
415     //On récupère le numéro de dossier
416     $dossier = $dossier[0];
417    
418     //}}}
419     // On se déconnecte
420     $this->deconnect();
421    
422     // On se connecte en tant que "instr"
423     $this->login("instr", "instr");
424     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
425     $this->verifyNoErrors();
426     //{{{ On ajoute trois consultation
427     //On clique sur Nouveau Dossier
428     $this->byLinkText("Recherche")->click();
429     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
430     $this->verifyNoErrors();
431     //On cherche le dossier d'instruction
432     $this->byId("dossier")->value(str_replace(" ", "", $dossier));
433     // On valide la recherche
434     $this->byId("advanced-form")->submit();
435     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
436     $this->verifyNoErrors();
437     //On clique sur le dossier d'instruction
438     $this->byLinkText($dossier)->click();
439     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
440     $this->verifyNoErrors();
441     //On clique sur Modifier
442     $this->byClassName("edit-16")->click();
443     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
444     $this->verifyNoErrors();
445     //On clique sur erp
446     $this->byId("erp")->click();
447     //On valide le formulaire
448     $this->byName("f1")->submit();
449     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
450     $this->verifyNoErrors();
451     // On vérifie le message
452     $this->assertContains("Vos modifications ont bien été enregistrées.",$this->byCssSelector(".message .text")->text());
453     //On clique sur l'onglet Consulation
454     $this->byId("consultation")->click();
455     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
456     $this->verifyNoErrors();
457     //On ajoute trois consultations
458     foreach ($services as $value) {
459     $this->addConsultation($value);
460     }
461    
462     //}}}
463 vpihour 2871
464 vpihour 2870 // On se déconnecte
465     $this->deconnect();
466 vpihour 2871
467     // On se connecte en tant que "admin"
468     $this->login("admin", "admin");
469     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
470     $this->verifyNoErrors();
471     //{{{ On remet les valeurs par défaut des paramètres
472     //On clique sur Administration
473     $this->byLinkText("Administration")->click();
474     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
475     $this->verifyNoErrors();
476     //On clique sur Paramètre
477     $this->byLinkText("Paramètre")->click();
478     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
479     $this->verifyNoErrors();
480     $this->changeParametreServiceErp("erp_service_accessibilite", $erp_service_accessibilite);
481     $this->changeParametreServiceErp("erp_service_securite", $erp_service_securite);
482     $this->changeParametreServiceErp("erp_service_conformite", $erp_service_conformite);
483     //}}}
484    
485     //On se déconnecte
486     $this->logout();
487 vpihour 2870 }
488     /*
489     * Ajoute un service
490     * @param string $abrege le nom abrege du service
491     * @param string $libelle le libelle du service
492     *
493     * @return int l'identifiant du service crée
494     */
495     private function addService($abrege, $libelle){
496    
497     //On clique sur le + du tableau
498     $this->byClassName("add-16")->click();
499     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
500     $this->verifyNoErrors();
501     //On remplit les champs obligatoires
502     $this->byId("abrege")->value($abrege);
503     $this->byId("libelle")->value($libelle);
504     //Consultation - Demande d'avis
505     $this->select($this->byId("edition"))->selectOptionByValue("9");
506     //On valide le formulaire
507     $this->byName('f1')->submit();
508     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
509     $this->verifyNoErrors();
510     // On vérifie que le message de validation est présent
511     $this->assertContains('Vos modifications ont bien été enregistrées.', $this->byCssSelector(".message .text")->text());
512     //On clique sur le bouton retour
513     $this->byLinkText("Retour")->click();
514     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
515     $this->verifyNoErrors();
516     //On saisie le nom du service dans la recherche simple
517     $this->byClassName("champFormulaire")->value($libelle);
518     //On valide la recherche
519     $this->byName('s1')->submit();
520     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
521     $this->verifyNoErrors();
522     //On clique sur le service
523     $this->byLinkText($libelle)->click();
524     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
525     $this->verifyNoErrors();
526     //On récupère l'identifiant
527     $serviceId = trim($this->byId("service")->text());
528     //On clique sur le bouton Retour
529     $this->byLinkText("Retour")->click();
530     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
531     $this->verifyNoErrors();
532     //On retourne l'identifiant
533     return $serviceId;
534     }
535    
536     /*
537     * Modifie la valeur du paramètre du numéro de service pour le message ERP
538     * @param string $parametre le libelle du paramètre
539     * @param string $valeur la valeur à renseigner
540     *
541     * @return string la valeur précédente du paramètre
542     */
543     private function changeParametreServiceErp($parametre, $valeur){
544    
545     //On vide le champ
546     $this->byClassName("champFormulaire")->clear();
547     //On saisie le nom de la variable dans la recherche simple
548     $this->byClassName("champFormulaire")->value($parametre);
549     //On valide la recherche
550     $this->byName('s1')->submit();
551     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
552     $this->verifyNoErrors();
553     //On clique sur le service
554     $this->byLinkText($parametre)->click();
555     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
556     $this->verifyNoErrors();
557     //On clique sur modifier dans le portail d'action
558     $this->byClassName("edit-16")->click();
559     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
560     $this->verifyNoErrors();
561     //On récupère la valeur actuelle du paramètre
562 vpihour 3156 $parametre = trim($this->byId("valeur")->attribute('value'));
563 vpihour 2870 //On vide le champ
564     $this->byId("valeur")->clear();
565     //On change la valeur du paramètre
566     $this->byId("valeur")->value($valeur);
567     //On valide le formulaire
568     $this->byName('f1')->submit();
569     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
570     $this->verifyNoErrors();
571     // On vérifie que le message de validation est présent
572     $this->assertContains('Vos modifications ont bien été enregistrées.', $this->byCssSelector(".message .text")->text());
573     //On clique sur le bouton retour
574     $this->byLinkText("Retour")->click();
575     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
576     $this->verifyNoErrors();
577     //On clique sur le bouton retour
578     $this->byLinkText("Retour")->click();
579     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
580     $this->verifyNoErrors();
581     //On retourne la valeur
582     return $parametre;
583     }
584    
585     /*
586     * Ajoute une consultation
587     * @param int $service l'identifiant du service
588     */
589     private function addConsultation($service){
590    
591     //On clique sur le + du tableau
592     $this->byClassName("add-16")->click();
593     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
594     $this->verifyNoErrors();
595     //On choisit le service
596     $this->select($this->byId("service"))->selectOptionByValue($service);
597     //On valide le formulaire
598     $this->byName("f2")->submit();
599     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
600     $this->verifyNoErrors();
601     // On vérifie que le message de validation est présent
602     $this->assertContains('Vos modifications ont bien été enregistrées.', $this->byCssSelector("#sousform-consultation .message .text")->text());
603     // On vérifie que le message d'envoi est présent
604     $this->assertContains('Le message a été transmis au référentiel ERP.', $this->byCssSelector("#sousform-consultation .message .text")->text());
605     //On clique sur le bouton retour
606     $this->byLinkText("Retour")->click();
607     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
608     $this->verifyNoErrors();
609     }
610 fmichon 1735 }
611    
612     ?>

Properties

Name Value
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26