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

Annotation of /trunk/tests/testSuivi.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2740 - (hide annotations)
Fri Feb 14 16:41:21 2014 UTC (10 years, 11 months ago) by softime
File size: 24274 byte(s)
- Correction des tests.
- Ajout du set de la timezone dans les setUp
1 fmichon 1673 <?php
2     /**
3     *
4     *
5     * @package openfoncier
6     * @version SVN : $Id$
7     */
8    
9     //
10 fmichon 1677 require_once "base.php";
11 fmichon 1673
12     /**
13     *
14     */
15 nhaye 2412 class Suivi extends Base2TestCase {
16 fmichon 1673
17 softime 2605 // Liste des utilisateurs
18     var $listUtlisateurs = array(
19     array(
20     "login" => "suivi",
21     "mdp" => "suivi"
22     ),
23     array(
24     "login" => "adminfonct",
25     "mdp" => "adminfonct"
26     ),
27     );
28    
29 fmichon 1673 /**
30     * Ce test vise uniquement à vérifier que les écrans correspondant à chaque
31     * entrée de menu ne génère pas une erreur de base de données
32     */
33 softime 2605 // Fonction privé
34     private function ouvertureMenu($utilisateur) {
35     // On se connecte
36     $this->login($utilisateur["login"], $utilisateur["mdp"]);
37     // Ouvre le menu
38     $this->openMenu("Suivi", $utilisateur);
39     // On vérifie le menu "Retours De Consultation"
40     $this->byLinkText("Retours De Consultation")->click();
41     $this->assertContains("Suivi > Suivi Des Pièces > Retours De Consultation",
42     $this->byId("title")->text());
43     $this->verifyNoErrors();
44     // On vérifie le menu "Mise À Jour Des Dates"
45 nhaye 2412 $this->byLinkText("Mise À Jour Des Dates")->click();
46     $this->assertContains("Suivi > Suivi Des Pièces > Mise À Jour Des Dates",
47 softime 2605 $this->byId("title")->text());
48 fmichon 1719 $this->verifyNoErrors();
49 softime 2605 // On vérifie le menu "Envoi Lettre RAR"
50     $this->byLinkText("Envoi Lettre RAR")->click();
51     $this->assertContains("Suivi > Suivi Des Pièces > Envoi Lettre RAR",
52     $this->byId("title")->text());
53     $this->verifyNoErrors();
54     // On vérifie le menu "Bordereaux"
55     $this->byLinkText("Bordereaux")->click();
56     $this->assertContains("Suivi > Suivi Des Pièces > Bordereaux",
57     $this->byId("title")->text());
58     $this->verifyNoErrors();
59     // On vérifie le menu "Mise À Jour Des Dates" de la catégorie
60     // "Demandes D'avis"
61     $this->byClassName("demandes_avis_mise_a_jour_des_dates-16")->click();
62     $this->assertContains("Suivi > Demande D'avis > Mise À Jour Des Dates",
63     $this->byId("title")->text());
64     $this->verifyNoErrors();
65     // On vérifie le menu "Gestion"
66 nhaye 2412 $this->byLinkText("Gestion")->click();
67     $this->assertContains("Suivi > Commissions > Gestion",
68 softime 2605 $this->byId("title")->text());
69 fmichon 1719 $this->verifyNoErrors();
70 softime 2605 // On vérifie le menu "Demandes"
71 nhaye 2412 $this->byLinkText("Demandes")->click();
72     $this->assertContains("Suivi > Commissions > Demandes",
73 softime 2605 $this->byId("title")->text());
74 fmichon 1719 $this->verifyNoErrors();
75 softime 2605 // On se déconnecte
76     $this->deconnect();
77 fmichon 1673 }
78 softime 2605 // Fonction public
79     public function test01OuvertureMenu() {
80     // Récupération des utilisateurs
81     $utilisateurs = $this->listUtlisateurs;
82     // Pour chaque utilisateur on lance le test
83     foreach ($utilisateurs as $utilisateur) {
84     //
85     $this->ouvertureMenu($utilisateur);
86     }
87     // On vérifie la déconnexion
88     $this->verifyDeconnect();
89     }
90 nhaye 1695
91     /**
92     * XXX tous les cas d'utilisation ne sont pas testés
93     * Permet de tester la génération de feuillets pour lettre avec accusé de récéption
94     */
95 softime 2605 // Fonction privé
96     private function envoiLettreRAR($utilisateur, $dossier) {
97 nhaye 2412
98 softime 2605 // On se connecte en tant que "admin"
99 nhaye 2412 $this->login("admin", "admin");
100     // On clique sur le menu Instruction
101     $this->byLinkText("Instruction")->click();
102     // On clique sur le menu Recherche
103     $this->byLinkText("Recherche")->click();
104     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
105     $this->verifyNoErrors();
106 nhaye 2413 // On clique sur le dossier PC 013055 12 00002P
107 softime 2605 $this->byLinkText($dossier)->click();
108 nhaye 2412 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
109     $this->verifyNoErrors();
110 nhaye 2413 // liste des instructions
111 nhaye 2412 $this->byId("instruction")->click();
112     // On clique sur le + pour ajouter une instruction
113     $this->byCssSelector("#sousform-instruction .actions-max-1 a")->click();
114     // On choisi l'événement "adjoint [majoration]"
115     $this->select($this->byId("evenement"))->selectOptionByValue("81");
116     // On clique sur le bouton ajouter
117     $this->byXPath("//input[@value='Ajouter']")->click();
118     // On vérifie que l'instruction s'est bien ajouté
119     $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-instruction .message .text")->text());
120     // On clique sur le bouton retour
121     $this->byCssSelector("#sousform-instruction form a.retour")->click();
122     // On clique sur l'instruction nouvellement créée
123     $this->byLinkText("accepter un dossier sans réserve")->click();
124 nhaye 2417 $idInstr = $this->byCssSelector("div.form-content > #instruction")->text();
125 nhaye 2412 // On finalise le document
126     $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(4) a")->click();
127     // On vérifie le message de validation
128     $this->assertEquals('La finalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-instruction .message .text")->text());
129     //On se déconnecte de l'application
130     $this->deconnect();
131    
132 nhaye 2413 // Vérification du formulaire de génération des RAR
133 softime 2605 // On se connecte
134     $this->login($utilisateur["login"], $utilisateur["mdp"]);
135     // Ouvre le menu
136     $this->openMenu("Suivi", $utilisateur);
137     // On vérifie le menu "Envoi Lettre RAR"
138 nhaye 2412 $this->byLinkText("Envoi Lettre RAR")->click();
139     $this->assertContains("Suivi > Suivi Des Pièces > Envoi Lettre RAR",
140     $this->byCssSelector("#content")->text());
141 fmichon 1719 $this->verifyNoErrors();
142 fmichon 1710
143 nhaye 1695 // Vérification sans valeur saisie
144 nhaye 2412 $this->byXPath("//input[@value='Valider']")->click();
145 fmichon 1721 $this->verifyNoErrors();
146 nhaye 2412 $this->assertEquals("Tous les champs doivent être remplis.",
147     $this->byCssSelector("span.text")->text());
148 fmichon 1710
149     // Vérification avec un numéro non valide
150 nhaye 2412 $this->byId('liste_code_barres_instruction')->value("a");
151     $this->byXPath("//input[@value='Valider']")->click();
152 fmichon 1721 $this->verifyNoErrors();
153 nhaye 2412 $this->assertEquals("Le code barres d'instruction a n'est pas valide.",
154     $this->byCssSelector("span.text")->text());
155 fmichon 1710
156     // Vérification avec un numéro non présent en base
157 nhaye 2412 $this->byId('liste_code_barres_instruction')->clear();
158     $this->byId('liste_code_barres_instruction')->value("123");
159     $this->byXPath("//input[@value='Valider']")->click();
160 fmichon 1721 $this->verifyNoErrors();
161 nhaye 2412 $this->assertEquals("Le numéro 123 ne correspond à aucun code barres d'instruction.",
162     $this->byCssSelector("span.text")->text());
163 fmichon 1710
164 nhaye 1695 // Vérification formulaire valide
165 nhaye 2412 $this->byId('liste_code_barres_instruction')->clear();
166 nhaye 2417 $this->byId('liste_code_barres_instruction')->value("1100000000".$idInstr);
167 nhaye 2412 $this->byXPath("//input[@value='Valider']")->click();
168 fmichon 1719 $this->verifyNoErrors();
169 nhaye 2412 $this->assertContains("Cliquez sur le lien ci-dessous pour télécharger votre document :",
170     $this->byCssSelector("span.text")->text());
171     $this->assertContains("Télécharger le document pour 1 RAR",
172     $this->byCssSelector("span.text")->text());
173 nhaye 1695 //
174 softime 2605 $this->deconnect();
175 nhaye 1695 }
176 softime 2605 // Fonction public
177     public function test02EnvoiLettreRAR() {
178     // Récupération des utilisateurs
179     $utilisateurs = $this->listUtlisateurs;
180     // Liste des dossiers par utilisateur
181     $dossiers = array(
182     "suivi" => "PC 013055 12 00001P0",
183     "adminfonct" => "PC 013055 12 00002P0"
184     );
185     // Pour chaque utilisateur on lance le test
186     foreach ($utilisateurs as $utilisateur) {
187     //
188     $this->envoiLettreRAR($utilisateur, $dossiers[$utilisateur['login']]);
189     }
190     // On vérifie la déconnexion
191     $this->verifyDeconnect();
192     }
193 fmichon 1690
194     /**
195     *
196     */
197     public function testBordereaux() {
198 softime 2605 // Instancie la timezone
199     date_default_timezone_set('Europe/Paris');
200 fmichon 1685 //
201 fmichon 1727 $this->login("suivi", "suivi");
202 fmichon 1710
203 fmichon 1690 //
204 nhaye 2412 $this->byLinkText("Bordereaux")->click();
205 fmichon 1721 $this->verifyNoErrors();
206 nhaye 2412 $this->assertContains("Suivi > Suivi Des Pièces > Bordereaux",
207     $this->byCssSelector("#content")->text());
208 fmichon 1690 //
209 nhaye 2412 $this->byXPath("//input[@value='Valider']")->click();
210 fmichon 1719 $this->verifyNoErrors();
211 nhaye 2412 $this->assertEquals("Veuillez sélectionner un bordereau.",
212     $this->byCssSelector("span.text")->text());
213 fmichon 1690
214     //
215 nhaye 2412 $this->select($this->byId("bordereau"))->selectOptionByValue("bordereau_avis_maire_prefet");
216     $this->byId("date_bordereau")->clear();
217     // On clique sur "OK" dans la boite de dialogue qui apparaît
218     $this->acceptAlert();sleep(1);
219     $this->byId("bordereau")->click();
220     $this->byXPath("//input[@value='Valider']")->click();
221 fmichon 1719 $this->verifyNoErrors();
222 nhaye 2412 $this->assertEquals("Veuillez saisir une date valide.",
223     $this->byCssSelector("span.text")->text());
224 fmichon 1710
225 fmichon 1690 //
226     $bordereaux = array(
227 nhaye 2412 "bordereau_avis_maire_prefet" => "Bordereau d'envoi des avis du Maire au Préfet",
228     "bordereau_controle_legalite" => "Bordereau d'envoi des contrôles de légalité",
229     "bordereau_courriers_signature_maire" => "Bordereau d'envoi de courriers signature Maire",
230     "bordereau_decisions" => "Bordereau d'envoi des décisions",
231 fmichon 1690 );
232 nhaye 2412 foreach ($bordereaux as $key => $bordereau) {
233 fmichon 1690 //
234 nhaye 2412 $this->select($this->byId("bordereau"))->selectOptionByValue(
235     $key);
236    
237     $this->byXPath("//input[@value='Valider']")->click();
238     $this->assertContains(
239     "Cliquez sur le lien ci-dessous pour télécharger votre bordereau :\n\n".$bordereau." au ".date("d/m/Y"),
240     $this->byCssSelector("span.text")->text());
241 fmichon 1690 //
242 nhaye 2412 $this->byLinkText($bordereau." au ".date("d/m/Y"))->click();
243 fmichon 1690 sleep(5);
244 nhaye 2412 // Liste les fenêtres
245     $windows = $this->windowHandles();
246     // Change la fenêtre
247     $this->window($windows[1]);
248     // On vérifie qu'il n'y ait pas d'erreur
249     $this->verifynoerrors();
250     // On vérifie que le text est présent
251     $this->assertContains("Edition du ".date("d/m/Y"), $this->source());
252     // On ferme la fenêtre
253     $this->closeWindow();
254     // On change le focus de la fenêtre
255     $this->window($windows[0]);
256 fmichon 1690 }
257 fmichon 1710
258 fmichon 1690 //
259 fmichon 1685 $this->logout();
260     }
261    
262 fmichon 1818 public function test_20_mise_a_jour_des_dates_simple_par_la_cellule_suivi() {
263 nhaye 2417 // On se connecte en tant que "instr"
264     $this->login("admin", "admin");
265     // On clique sur le menu Instruction
266     $this->byLinkText("Instruction")->click();
267     // On clique sur le menu Recherche
268     $this->byLinkText("Recherche")->click();
269     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
270     $this->verifyNoErrors();
271     // On clique sur le dossier PC 013055 12 00002P
272     $this->byLinkText("PC 013055 12 00002P0")->click();
273     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
274     $this->verifyNoErrors();
275     // liste des instructions
276     $this->byId("instruction")->click();
277     // On clique sur l'instruction nouvellement créée
278     $this->byLinkText("accepter un dossier sans réserve")->click();
279     $idInstr = $this->byCssSelector("div.form-content > #instruction")->text();
280     $this->deconnect();
281    
282 fmichon 1817 // On se connecte en tant que "suivi"
283     $this->login("suivi", "suivi");
284     // On clique sur le lien "Mise à jour des dates" dans le menu
285 nhaye 2412 $this->byLinkText("Mise À Jour Des Dates")->click();
286 fmichon 1817 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
287     $this->verifyNoErrors();
288     //
289     $dates = array(
290     0 => array(
291     "id" => "date_envoi_signature",
292     "label" => "date d'envoi pour signature Mairie/Préfet",
293     "date" => "10/04/2013",
294     ),
295     1 => array(
296     "id" => "date_retour_signature",
297     "label" => "date de retour de signature Mairie/Préfet",
298     "date" => "12/04/2013",
299     ),
300 fmichon 1818 2 => array(
301     "id" => "date_envoi_controle_legalite",
302     "label" => "date d'envoi au contrôle de légalite",
303     "date" => "12/04/2013",
304     ),
305     3 => array(
306     "id" => "date_retour_controle_legalite",
307     "label" => "date de retour de controle de légalite",
308     "date" => "18/04/2013",
309     ),
310 fmichon 1817 );
311     foreach($dates as $date) {
312     // On vérifie que le titre de la page est correct
313 nhaye 2412 $this->assertContains("Suivi > Suivi Des Pièces > Mise À Jour Des Dates",
314     $this->byCssSelector("#content")->text());
315 fmichon 1817 // On saisi les informations de mise à jour de la date
316 nhaye 2412 $this->select($this->byId("type_mise_a_jour"))->selectOptionByValue(
317     $date["id"]);
318     $this->byId("date")->clear();
319     $this->byId("date")->value($date["date"]);
320 nhaye 2417 $this->byId("code_barres")->value("1100000000".$idInstr);
321 fmichon 1817 // On clique sur le bouton "Valider"
322 nhaye 2412 $this->byName("validation")->click();
323 fmichon 1817 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
324     $this->verifyNoErrors();
325     // On vérifie que le les informations du dossier sont bien présentes
326 nhaye 2412 $this->assertEquals("PC 013055 12 00002P0",
327     $this->byId("dossier_libelle")->text());
328     $this->assertEquals($date["date"],
329     $this->byCssSelector("#".$date["id"])->text());
330 fmichon 1817 // On clique sur le bouton "Valider"
331 nhaye 2412 $this->byName("validation")->click();
332 fmichon 1817 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
333     $this->verifyNoErrors();
334     // On vérifie que le message de validation est présent
335 nhaye 2412 $this->assertEquals("Saisie enregistrée",
336     $this->byCssSelector("span.text")->text());
337    
338 fmichon 1817 }
339     // On se déconnecte
340 nhaye 2412 $this->deconnect();
341 fmichon 1817
342     // On se connecte en tant que "instr"
343     $this->login("instr", "instr");
344 nhaye 2412 // On saisit le numéro de dossier "PC0130551200002P0" dans le champ de
345     // recherche du widget "accès direct" du tableau de bord qui possède le focus
346     $this->byId("dossier")->value("PC0130551200002P0");
347     // On clique sur le bouton "Rechercher" du widget "accès direct" du
348     // tableau de bord
349     $this->byName("validation")->click();
350 fmichon 1817 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
351     $this->verifyNoErrors();
352 nhaye 2412 // On vérifie que le titre de la page est correct
353     // (que nous sommes sur le bon dossier)
354     $this->assertContains("Instruction > Dossiers D'instruction > PC 013055 12 00002P0",
355     $this->byCssSelector("#content")->text());
356 fmichon 1817 // On clique sur l'onglet "Instruction"
357 nhaye 2412 $this->byId("instruction")->click();
358 fmichon 1817 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
359     $this->verifyNoErrors();
360 fmichon 2209 // On clique sur le lien de l'événement d'instruction n°11
361 nhaye 2412 $this->byLinkText("arrete")->click();
362 fmichon 1817 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
363     $this->verifyNoErrors();
364 nhaye 2412 // On vérifie que le sous-titre est correct (que nous sommes sur le bon
365     // événement d'instruction)
366 nhaye 2417 $this->assertEquals($idInstr,
367 nhaye 2412 $this->byCssSelector("div.form-content > #instruction")->text());
368     // On boucle sur chaque date pour vérifier que ces dernières sont bien
369     // présentes sur l'écran de visualisation de l'événement d'instruction
370 fmichon 1818 foreach($dates as $date) {
371     //
372 nhaye 2412 $this->assertEquals($date["date"],
373     $this->byId($date["id"])->text());
374 fmichon 1818 }
375 fmichon 1817 // On clique sur le bouton retour
376 nhaye 2412 $this->byCssSelector("#sformulaire > a.retour")->click();
377 fmichon 1817 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
378     $this->verifyNoErrors();
379 vpihour 2603
380     //{{{On rajoute une consultation avec demande d'avis
381     //On clique sur le menu "Recherche"
382     $this->byLinkText("Recherche")->click();
383     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
384     $this->verifyNoErrors();
385     //On choisit le dossier AT 013055 13 00001P0
386     $this->byLinkText("AT 013055 12 00001P0")->click();
387     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
388     $this->verifyNoErrors();
389     //On clique sur l'onglet Consultation
390     $this->byId("consultation")->click();
391     //L'assertion précédente est un chargement javascript, on attend 2 secondes
392     sleep(2);
393     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
394     $this->verifyNoErrors();
395     //On ajoute deux consultation de test
396     $consultationPourConformite = $this->addConsultation(2, "Atelier du Patrimoine");
397     $consultationAvecAvisAttendu = $this->addConsultation(13, "Régie des Tranports de Marseille - DTP/CIP");
398    
399     //On se déconnecte
400     $this->deconnect();
401     //}}}
402    
403     // On se connecte à l'application
404     $this->login("suivi", "suivi");
405     //On clique sur le menu "Mise à jour des dates" de la catégorie "Demandes d'avis"
406     $this->byClassName("demandes_avis_mise_a_jour_des_dates-16")->click();
407     //On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
408     $this->verifyNoErrors();
409     //On vérifie qu'on est dans le bon menu
410     $this->assertContains("Demande D'avis", $this->byCssSelector("#title h2")->text());
411     //On saisit un code barres et on ne saisit pas la date
412     $this->byId("code_barres")->value("123456789123");
413     //On valide
414     $this->byXPath("//input[@type='submit']")->click();sleep(1);
415     //On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
416     $this->verifyNoErrors();
417     //On vérifie le message
418     $this->assertContains("Tous les champs doivent être remplis.",
419     $this->byCssSelector(".message .text")->text());
420     //On saisit la date
421     $this->byId("date")->value(date("d/m/Y",strtotime("+1 day")));
422     //On saisit une consultation qui n'existe pas
423     $this->byId("code_barres")->clear();
424     $this->byId("code_barres")->value("123456789123");
425     //On valide
426     $this->byXPath("//input[@type='submit']")->click();sleep(1);
427     //On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
428     $this->verifyNoErrors();
429     //On vérifie le message
430     $this->assertContains("Le numéro saisi ne correspond à aucun code barres de consultation.",
431     $this->byCssSelector(".message .text")->text());
432     //On saisit une consultation qui n'est pas une demande d'avis
433     $this->byId("code_barres")->clear();
434     $this->byId("code_barres")->value("12".str_pad($consultationPourConformite, 10, "0", STR_PAD_LEFT));
435     //On valide
436     $this->byXPath("//input[@type='submit']")->click();sleep(1);
437     //On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
438     $this->verifyNoErrors();
439     //On vérifie le message
440     $this->assertContains("Cette consultation n'a pas d'avis attendu.",
441     $this->byCssSelector(".message .text")->text());
442     //On saisit une consultation qui a une demande d'avis
443     $this->byId("code_barres")->clear();
444     $this->byId("code_barres")->value("12".str_pad($consultationAvecAvisAttendu, 10, "0", STR_PAD_LEFT));
445     //On valide
446     $this->byXPath("//input[@type='submit']")->click();sleep(1);
447     //On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
448     $this->verifyNoErrors();
449     //On vérifie qu'on est sur la consultation
450     $this->assertEquals(trim($this->byId("dossier_libelle")->text()), "AT 013055 12 00001P0");
451     $this->assertEquals($this->byId("code_barres")->value(), "12".str_pad($consultationAvecAvisAttendu, 10, "0", STR_PAD_LEFT));
452     //On valide la mise à jour de la date
453     $this->byXPath("//input[@type='submit']")->click();sleep(1);
454     //On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
455     $this->verifyNoErrors();
456     //On vérifie que la saisie s'est correctement enregistrée
457     $this->assertContains("Saisie enregistrée", $this->byCssSelector(".message .text")->text());
458     //On se déconnecte
459     $this->deconnect();
460     // On se connecte en tant que "instr"
461     $this->login("instr", "instr");
462     //On clique sur le menu "Recherche"
463     $this->byLinkText("Recherche")->click();
464     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
465     $this->verifyNoErrors();
466     //On choisit le dossier AT 013055 13 00001P0
467     $this->byLinkText("AT 013055 12 00001P0")->click();
468     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
469     $this->verifyNoErrors();
470     //On clique sur l'onglet Consultation
471     $this->byId("consultation")->click();
472     //L'assertion précédente est un chargement javascript, on attend 2 secondes
473     sleep(2);
474     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
475     $this->verifyNoErrors();
476     //On clique sur la consultation
477     $this->byLinkText($consultationAvecAvisAttendu)->click();
478     //On vérifie que la date s'est bien mise à jour
479     $this->assertEquals(date("d/m/Y",strtotime("+1 day")), $this->byId("date_reception")->text());
480 fmichon 1817 // On se déconnecte
481     $this->logout();
482     }
483 vpihour 2603
484     /**
485     * Ajoute une consultation
486     * @param $serviceId L'identifiant du service à consulter
487     * @param $serviceLibelle Le libellé du service à consulter
488     * @return L'identifiant de la consultation ajoutée
489     */
490     public function addConsultation($service, $serviceLibelle){
491    
492     // On clique sur le lien "+" dans le tableau
493     $this->byClassName("add-16")->click();
494     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
495     $this->verifyNoErrors();
496     //On choisit un service dont le type d'avis est "avec avis attendu" (13)
497     $this->select($this->byId("service"))->selectOptionByValue($service);
498     // On clique sur le bouton "Ajouter" du formulaire sans sélectionner de service
499     $this->byXPath("//input[@value='Ajouter']")->click();sleep(1);
500     //On vérifie que la consultation s'est bien ajoutée
501     $this->assertContains('Vos modifications ont bien été enregistrées.', $this->byCssSelector("#sousform-consultation .message .text")->text());
502     //On clique sur retour
503     $this->byCssSelector("#sousform-consultation .retour")->click();
504     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
505     $this->verifyNoErrors();
506     //On clique sur la nouvelle consultation
507     $this->byLinkText($serviceLibelle)->click();
508     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
509     $this->verifyNoErrors();
510     //On récupère le numéro de la consultation
511     $consultation = trim($this->byCssSelector("#sousform-consultation #consultation")->text());
512     //On clique sur retour
513     $this->byCssSelector("#sousform-consultation .retour")->click();
514     //On retourne le numéro de la consultation
515     return $consultation;
516     }
517 fmichon 1673 }
518    
519     ?>

Properties

Name Value
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26