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

Diff of /trunk/tests/testConsultations.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1736 by fmichon, Fri Apr 19 13:18:22 2013 UTC revision 1824 by vpihour, Thu May 2 17:24:21 2013 UTC
# Line 17  class Consultations extends BaseTestCase Line 17  class Consultations extends BaseTestCase
17      public function test_01_ajout_consultation_simple_par_l_instructeur() {      public function test_01_ajout_consultation_simple_par_l_instructeur() {
18          // On positionne une vitesse pour que les requêtes ajax puissent s'exécuter correctement          // On positionne une vitesse pour que les requêtes ajax puissent s'exécuter correctement
19          $this->setSpeed('120');          $this->setSpeed('120');
   
20          // On se connecte en tant que "instr"          // On se connecte en tant que "instr"
21          $this->login("instr", "instr");          $this->login("instr", "instr");
   
22          // On clique sur le lien "Mes encours" dans le menu          // On clique sur le lien "Mes encours" dans le menu
23          $this->clickAndWait("link=mes encours");          $this->clickAndWait("link=mes encours");
24          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
# Line 73  class Consultations extends BaseTestCase Line 71  class Consultations extends BaseTestCase
71          $this->click("css=form[name=\"f2\"] > div.formControls > a.retour");          $this->click("css=form[name=\"f2\"] > div.formControls > a.retour");
72          // On vérifie que nous avons bien 1 consultation affichée          // On vérifie que nous avons bien 1 consultation affichée
73          $this->verifyTextPresent("1 - 1 enregistrement(s) sur 1");          $this->verifyTextPresent("1 - 1 enregistrement(s) sur 1");
           
74          // On se déconnecte          // On se déconnecte
75          $this->logout();          $this->logout();
76      }      }
77        
78      public function test_02_ajout_consultation_multiple_par_l_instructeur() {      public function test_02_ajout_consultation_multiple_par_l_instructeur() {
79          // On positionne une vitesse pour que les requêtes ajax puissent s'exécuter correctement          // On positionne une vitesse pour que les requêtes ajax puissent s'exécuter correctement
80          $this->setSpeed('120');          $this->setSpeed('120');
   
81          // On se connecte en tant que "instr"          // On se connecte en tant que "instr"
82          $this->login("instr", "instr");          $this->login("instr", "instr");
83            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
84            $this->verifyNoErrors();
85          // On clique sur le lien "Mes encours" dans le menu          // On clique sur le lien "Mes encours" dans le menu
86          $this->clickAndWait("link=mes encours");          $this->clickAndWait("link=mes encours");
87          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
# Line 97  class Consultations extends BaseTestCase Line 94  class Consultations extends BaseTestCase
94          $this->click("id=consultation");          $this->click("id=consultation");
95          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
96          $this->verifyNoErrors();          $this->verifyNoErrors();
   
97          // On clique sur le lien "Ajouter multiples" dans le tableau          // On clique sur le lien "Ajouter multiples" dans le tableau
98          $this->click("//div[@id='sousform-consultation']/table/thead/tr/th/a[2]/span");          $this->click("//div[@id='sousform-consultation']/table/thead/tr/th/a[2]/span");
99          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
# Line 106  class Consultations extends BaseTestCase Line 102  class Consultations extends BaseTestCase
102          $this->click("id=button_val");          $this->click("id=button_val");
103          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
104          $this->verifyNoErrors();          $this->verifyNoErrors();
105          // On vérifier qu'une alerte javascript nous indique qu'il y a une erreur de saisie          // On vérifie qu'une alerte javascript nous indique qu'il y a une erreur de saisie
106          $this->assertEquals("Veuillez choisir au moins un service et une date d envoi", $this->getAlert());          $this->assertEquals("Veuillez choisir au moins un service et une date d envoi", $this->getAlert());
107          // On sélectionne quatre services          // On sélectionne quatre services
108          $this->click("id=t10_572_0_");          $this->click("id=t10_572_0_");
# Line 129  class Consultations extends BaseTestCase Line 125  class Consultations extends BaseTestCase
125          $this->verifyTextPresent("3 service(s) sélectionné(s) dont 1 consultation(s) papier.");          $this->verifyTextPresent("3 service(s) sélectionné(s) dont 1 consultation(s) papier.");
126          // On vérifie que nous avons bien 4 consultations affichées          // On vérifie que nous avons bien 4 consultations affichées
127          $this->verifyTextPresent("1 - 4 enregistrement(s) sur 4");          $this->verifyTextPresent("1 - 4 enregistrement(s) sur 4");
   
128          // On se déconnecte          // On se déconnecte
129          $this->logout();          $this->logout();
130      }      }
131        
132      public function test_03_reponse_a_une_consultation_par_le_service_consulte() {      public function test_03_reponse_a_une_consultation_par_le_service_consulte() {
133          // On positionne une vitesse pour que les requêtes ajax puissent s'exécuter correctement          // On positionne une vitesse pour que les requêtes ajax puissent s'exécuter correctement
134          $this->setSpeed('120');          $this->setSpeed('120');
   
135          // On se connecte en tant que "instr"          // On se connecte en tant que "instr"
136          $this->login("consu", "consu");          $this->login("consu", "consu");
137            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
138            $this->verifyNoErrors();
139          // On clique sur le lien "Demandes en cours" dans le menu          // On clique sur le lien "Demandes en cours" dans le menu
140          $this->clickAndWait("link=Demandes en cours");          $this->clickAndWait("link=Demandes en cours");
141          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
142          $this->verifyNoErrors();          $this->verifyNoErrors();
143          //          // On vérifie que le titre de la page est correct
144          $this->verifyTextPresent("Demandes d'avis > en cours");          $this->verifyTextPresent("Demandes d'avis > en cours");
145          // On clique sur le lien "AZ0130551200001P0" dans le tableau          // On clique sur le lien "AZ0130551200001P0" dans le tableau
146          $this->clickAndWait("link=AZ0130551200001P0");          $this->clickAndWait("link=AZ0130551200001P0");
147          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
148          $this->verifyNoErrors();          $this->verifyNoErrors();
149          // On clique sur le lein "Saisir un avis" dans le portlet          // On clique sur le lien "Saisir un avis" dans le portlet
150          $this->click("//div[@id='portlet-actions']/ul/li/a/span");          $this->click("//div[@id='portlet-actions']/ul/li/a/span");
151          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
152          $this->verifyNoErrors();          $this->verifyNoErrors();
153          //          // On vérifie que le sous-titre de l'élément affiché est correct
154          $this->verifyTextPresent("consultation  1");          $this->verifyTextPresent("consultation  1");
155          // Validation sans retour d'avis          // On clique sur le bouton "Modifier" du formulaire sans saisir de retour d'avis
156          $this->click("//input[@value='Modifier']");          $this->click("//input[@value='Modifier']");
157          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
158          $this->verifyNoErrors();          $this->verifyNoErrors();
# Line 165  class Consultations extends BaseTestCase Line 160  class Consultations extends BaseTestCase
160          $this->click("css=form[name=\"f2\"] > div.formControls > a.retour");          $this->click("css=form[name=\"f2\"] > div.formControls > a.retour");
161          // Accès au dossier en visualisation          // Accès au dossier en visualisation
162          $this->clickAndWait("link=AZ0130551200001P0");          $this->clickAndWait("link=AZ0130551200001P0");
163            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
164          $this->verifyNoErrors();          $this->verifyNoErrors();
165          $this->verifyTextPresent("Demandes d'avis > en cours");          $this->verifyTextPresent("Demandes d'avis > en cours");
166          // Accès à l'onglet des consultations          // Accès à l'onglet des consultations
167          $this->click("//div[@id='portlet-actions']/ul/li/a/span");          $this->click("//div[@id='portlet-actions']/ul/li/a/span");
168          $this->verifyTextPresent("consultation  1");          $this->verifyTextPresent("consultation  1");
169            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
170          $this->verifyNoErrors();          $this->verifyNoErrors();
171          // Saisie de valeurs          // Saisie de valeurs
172          $this->select("id=avis_consultation", "label=Defavorable");          $this->select("id=avis_consultation", "label=Defavorable");
# Line 178  class Consultations extends BaseTestCase Line 175  class Consultations extends BaseTestCase
175          $this->click("css=span.ui-icon.ui-icon-arrowthickstop-1-s");          $this->click("css=span.ui-icon.ui-icon-arrowthickstop-1-s");
176          // Validation sans saisie de fichier          // Validation sans saisie de fichier
177          $this->click("name=submit");          $this->click("name=submit");
178            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
179          $this->verifyNoErrors();          $this->verifyNoErrors();
180            //
181          $this->verifyTextPresent("Vous devez sélectionner un fichier.");          $this->verifyTextPresent("Vous devez sélectionner un fichier.");
182          // Saisie de fichier          // Saisie de fichier
183          $this->type("name=userfile[]", dirname(__FILE__)."/binaire/lettre_rar16042013124515.pdf");          $this->type("name=userfile[]", dirname(__FILE__)."/binaire/lettre_rar16042013124515.pdf");
184          $this->click("name=submit");          $this->click("name=submit");
185            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
186          $this->verifyNoErrors();          $this->verifyNoErrors();
187          // Validation de la modification de la demande d'avis          // Validation de la modification de la demande d'avis
188          $this->click("//input[@value='Modifier']");          $this->click("//input[@value='Modifier']");
189            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
190          $this->verifyNoErrors();          $this->verifyNoErrors();
191            // On vérifie que le message de validation est présent
192          $this->verifyTextPresent("Vos modifications ont bien été enregistrées.");          $this->verifyTextPresent("Vos modifications ont bien été enregistrées.");
193                    // On clique sur le lien retour
         // Retour à la liste des demandes  
194          $this->click("css=form[name=\"f2\"] > div.formControls > a.retour");          $this->click("css=form[name=\"f2\"] > div.formControls > a.retour");
195            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
196          $this->verifyNoErrors();          $this->verifyNoErrors();
197          // Vérification que la demande d'avis n'est plus presente          // Vérification que la demande d'avis n'est plus presente
198          $this->assertTextNotPresent("link=AZ0130551200001P0");          $this->assertTextNotPresent("link=AZ0130551200001P0");
199            // On se déconnecte
         //  
200          $this->logout();          $this->logout();
201      }      }
202        
203        
204      public function test_04_reponse_a_une_consultation_par_la_cellule_suivi() {      public function test_04_reponse_a_une_consultation_par_la_cellule_suivi() {
205          // On positionne une vitesse pour que les requêtes ajax puissent s'exécuter correctement          // On positionne une vitesse pour que les requêtes ajax puissent s'exécuter correctement
206          $this->setSpeed('120');          $this->setSpeed('120');
   
207          // On se connecte en tant que "suivi"          // On se connecte en tant que "suivi"
208          $this->login("suivi", "suivi");          $this->login("suivi", "suivi");
209            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
210            $this->verifyNoErrors();
211          //          //
212          $this->clickAndWait("link=retours de consultation");          $this->clickAndWait("link=retours de consultation");
213            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
214          $this->verifyNoErrors();          $this->verifyNoErrors();
215            // On vérifie que le titre de la page est correct
216          $this->verifyTextPresent("suivi > suivi des pièces > retours de consultation");          $this->verifyTextPresent("suivi > suivi des pièces > retours de consultation");
217                // On clique sur le bouton "Valider" sans saisir de code barres
         //  
218          $this->clickAndWait("//input[@value='Valider']");          $this->clickAndWait("//input[@value='Valider']");
219            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
220          $this->verifyNoErrors();          $this->verifyNoErrors();
221          $this->verifyTextPresent("Veuiller saisir un N° de consultation.");          //
222            $this->verifyTextPresent("Veuiller saisir un code barres de consultation.");
223            
224          //          //
225          $this->type("id=consultation", "aze");          $this->type("css=#code_barres:focus", "aze");
226          $this->clickAndWait("//input[@value='Valider']");          $this->clickAndWait("//input[@value='Valider']");
227            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
228          $this->verifyNoErrors();          $this->verifyNoErrors();
229          $this->verifyTextPresent("Cette consultation n'existe pas.");          $this->verifyTextPresent("Cette consultation n'existe pas.");
230            
231          // XXX Aller plus loin dans les cas d'utilisation lors de la saisie          // XXX Aller plus loin dans les cas d'utilisation lors de la saisie
232          $this->type("id=consultation", "2");          $this->type("css=#code_barres:focus", "120000000002");
233          $this->clickAndWait("//input[@value='Valider']");          $this->clickAndWait("//input[@value='Valider']");
234            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
235          $this->verifyNoErrors();          $this->verifyNoErrors();
236            // On vérifie que le titre de la page est correct
237          $this->verifyTextPresent("suivi > suivi des pièces > retours de consultation >  2");          $this->verifyTextPresent("suivi > suivi des pièces > retours de consultation >  2");
238          $this->verifyTextPresent("AZ0130551200001P0");          $this->verifyTextPresent("AZ0130551200001P0");
239          $this->select("id=avis_consultation", "label=Favorable");          $this->select("id=avis_consultation", "label=Favorable");
# Line 241  class Consultations extends BaseTestCase Line 248  class Consultations extends BaseTestCase
248          $this->click("css=span.ui-icon.ui-icon-arrowthickstop-1-s");          $this->click("css=span.ui-icon.ui-icon-arrowthickstop-1-s");
249          // Validation sans saisie de fichier          // Validation sans saisie de fichier
250          $this->click("name=submit");          $this->click("name=submit");
251            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
252          $this->verifyNoErrors();          $this->verifyNoErrors();
253          $this->verifyTextPresent("Vous devez sélectionner un fichier.");          $this->verifyTextPresent("Vous devez sélectionner un fichier.");
254          // Saisie de fichier          // Saisie de fichier
255          $this->type("name=userfile[]", dirname(__FILE__)."/binaire/lettre_rar16042013124515.pdf");          $this->type("name=userfile[]", dirname(__FILE__)."/binaire/lettre_rar16042013124515.pdf");
256          $this->click("name=submit");          $this->click("name=submit");
257            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
258          $this->verifyNoErrors();          $this->verifyNoErrors();
259          // Visualisation du fichier          // Visualisation du fichier
260          $this->click("css=span.ui-icon.ui-icon-newwin");          $this->click("css=span.ui-icon.ui-icon-newwin");
# Line 253  class Consultations extends BaseTestCase Line 262  class Consultations extends BaseTestCase
262          $this->click("css=span.ui-icon.ui-icon-closethick");          $this->click("css=span.ui-icon.ui-icon-closethick");
263          //          //
264          $this->clickAndWait("//input[@value='Modifier']");          $this->clickAndWait("//input[@value='Modifier']");
265            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
266          $this->verifyNoErrors();          $this->verifyNoErrors();
267            // On vérifie que le message de validation est présent
268          $this->verifyTextPresent("Vos modifications ont bien été enregistrées.");          $this->verifyTextPresent("Vos modifications ont bien été enregistrées.");
269            // On clique sur le lien retour
         //  
270          $this->clickAndWait("link=Retour");          $this->clickAndWait("link=Retour");
271            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
272          $this->verifyNoErrors();          $this->verifyNoErrors();
273            // On vérifie que le titre de la page est correct
274          $this->verifyTextPresent("suivi > suivi des pièces > retours de consultation");          $this->verifyTextPresent("suivi > suivi des pièces > retours de consultation");
275                // On se déconnecte
         //  
276          $this->logout();          $this->logout();
277      }      }
278    
279        public function test_05_gestion_de_la_consultation_par_l_instructeur() {
280            // On positionne une vitesse pour que les requêtes ajax puissent s'exécuter correctement
281            $this->setSpeed('120');
282            // On se connecte en tant que "instr"
283            $this->login("instr", "instr");
284            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
285            $this->verifyNoErrors();
286            // On vérifie que les consultations apparaissent bien sur le tableau de bord de l'instructeur
287            $this->verifyTextPresent("Vous avez 2 consultations pour lesquelles un avis a été rendu.");
288            // On clique sur le lien "Mes retours" dans le menu
289            $this->clickAndWait("link=Mes retours");
290            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
291            $this->verifyNoErrors();
292            // On vérifie que le titre de la page est correct
293            $this->verifyTextPresent("Instruction > consultations > mes retours");
294            // On vérifie que les deux consultations sont présentes dans le tableau
295            $this->verifyTextPresent("1 - 2 enregistrement(s) sur 2");
296            // On clique sur le lien "59.01 Direction de l'Eau et de l'Assainissement" dans le tableau
297            $this->clickAndWait("link=59.01 Direction de l'Eau et de l'Assainissement");
298            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
299            $this->verifyNoErrors();
300            // On vérifie que le formulaire de la consultation s'est bien ouvert
301            $this->verifyTextPresent("consultation  1");
302            // On clique sur le lien "Marquer comme lu" dans le portlet
303            $this->click("link=Marquer comme lu");
304            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
305            $this->verifyNoErrors();
306            // On vérifie que le message de validation est présent avec le bon nombre de consultations
307            $this->verifyTextPresent("Mise a jour effectue avec succes");
308            // On clique sur le lien retour
309            $this->click("css=#sousform-consultation > #sformulaire > div.formControls > a.retour");
310            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
311            $this->verifyNoErrors();
312            // On vérifie que le nombre de consultations est le bon
313            $this->verifyTextPresent("1 - 4 enregistrement(s) sur 4");
314            // On clique sur le lien "Tableau de bord" dans le menu
315            $this->clickAndWait("link=Tableau de bord");
316            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
317            $this->verifyNoErrors();
318            // On vérifie que les consultations apparaissent bien sur le tableau de bord de l'instructeur
319            $this->verifyTextPresent("Vous avez 1 consultation pour laquelle un avis a été rendu.");
320            // On se déconnecte
321            $this->logout();
322        }
323    
324  }  }
325    
326  ?>  ?>

Legend:
Removed from v.1736  
changed lines
  Added in v.1824

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26