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

Annotation of /trunk/tests/testGeolocalisation.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3191 - (hide annotations)
Mon Dec 1 09:13:17 2014 UTC (10 years, 2 months ago) by vpihour
File size: 43571 byte(s)
Correction des tests

1 softime 2171 <?php
2     /**
3     * Fichier contenant la classe de test Geolocalisation
4     *
5     * @package openads
6 softime 2263 * @version SVN : $Id$
7 softime 2171 */
8    
9 softime 2172 // Fichiers requis
10 softime 2171 require_once "base.php";
11    
12     /**
13     * Classe de test sur les actions liées à la géolocalisation
14 softime 2200 *
15 softime 2217 * Dossier d'instruction utilisé : AZ 013055 12 00001P0 et DP 013055 12 00001P0
16 softime 2171 */
17     class Geolocalisation extends Base2TestCase {
18    
19 softime 2263 /**
20 softime 2273 * Active l'option sig avec la valeur nécessaire pour la suite des tests
21     */
22 softime 2721 public function test_01_active_option_sig() {
23 softime 2273
24     // On se connecte en tant que "admin"
25     $this->login("admin", "admin");
26     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
27     $this->verifyNoErrors();
28     // On clique sur le lien "Administration" dans le menu
29     $this->byLinkText("Administration")->click();
30     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
31     $this->verifyNoErrors();
32     // // On clique sur le lien "Paramètre" dans le menu
33     $this->byLinkText("Paramètre")->click();
34     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
35     $this->verifyNoErrors();
36     // On remplis le champs de recherche simple
37     $this->byCssSelector("input[name='recherche']")->value('option_sig');
38     // On clique sur le bouton recherche
39     $this->byCssSelector(".ui-button")->click();
40     // On clique sur le résultat
41     $this->byLinkText("option_sig")->click();
42     // On clique sur le bouton "Modifier"
43     $this->byId('action-form-om_parametre-modifier')->click();
44     // On change la valeur par "sig_externe"
45     $this->byId('valeur')->clear();
46     $this->byId('valeur')->value('sig_externe');
47     // On valide la modification
48     $this->byCssSelector("input[value='Modifier']")->click();
49     // On vérifie le message de validation
50     $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#tabs-1 .message")->text());
51     // On clique sur le bouton 'Retour'
52     $this->byLinkText("Retour")->click();
53     // On vérifie les nouvelles données
54     $this->assertEquals("sig_externe", $this->byId("valeur")->text());
55     // On se déconnecte
56     $this->logout();
57     }
58    
59     /**
60 softime 2267 * Test la recherche avancée sur les parcelles
61     * le dossier AZ 013055 12 00001P0 à comme références cadastrales
62     * 806AB0001A0005 ce qui revient à dire qu'il a les références cadastrales
63     * 806AB0001, 806AB0002, 806AB0003, 806AB0004 et 806AB0005
64     */
65 softime 2721 public function test_02_recherche_avancee_parcelle() {
66 softime 2267
67     // On se connecte en tant que "instr"
68     $this->login("instr", "instr");
69     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
70     $this->verifyNoErrors();
71 softime 2361 // On clique sur le lien "Recherche" dans le menu
72 softime 2267 $this->byLinkText("Recherche")->click();
73     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
74     $this->verifyNoErrors();
75     // On remplis le champ parcelle de la recherche avancée
76     $this->byCssSelector("#advanced-form #parcelle")->value('806AB0001');
77     // On clique sur le bouton "Recherche"
78     $this->byId("adv-search-submit")->click();
79     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
80     $this->verifyNoErrors();
81     // On vérifie le dossier "AZ0130551200001P0" apparaît
82     $this->assertRegExp("/^[\s\S]*AZ 013055 12 00001P0[\s\S]*$/", $this->byCssSelector("#tab-dossier_instruction .tab-tab")->text());
83     // On remplis le champ parcelle de la recherche avancée
84     $this->byCssSelector("#advanced-form #parcelle")->value('806AB0001,806AB0003');
85     // On clique sur le bouton "Recherche"
86     $this->byId("adv-search-submit")->click();
87     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
88     $this->verifyNoErrors();
89     // On vérifie le dossier "AZ0130551200001P0" apparaît
90 softime 2361 $this->assertRegExp("/^[\s\S]*AZ 013055 12 00001P0[\s\S]*$/", $this->byCssSelector("#tab-dossier_instruction .tab-tab")->text());
91     // On clique sur le lien "Autorisation" dans le menu
92     $this->byLinkText("Autorisation")->click();
93     // On clique sur le lien "Dossiers D'autorisation" dans le menu
94     $this->byLinkText("Dossiers D'autorisation")->click();
95     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
96     $this->verifyNoErrors();
97     // On remplis le champ parcelle de la recherche avancée
98     $this->byCssSelector("#advanced-form #parcelle")->value('806AB0001');
99     // On clique sur le bouton "Recherche"
100     $this->byId("adv-search-submit")->click();
101     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
102     $this->verifyNoErrors();
103     // On vérifie le dossier "AZ0130551200001" apparaît
104     $this->assertRegExp("/^[\s\S]*AZ 013055 12 00001[\s\S]*$/", $this->byCssSelector("#tab-dossier_autorisation .tab-tab")->text());
105     // On remplis le champ parcelle de la recherche avancée
106     $this->byCssSelector("#advanced-form #parcelle")->value('806AB0001,806AB0003');
107     // On clique sur le bouton "Recherche"
108     $this->byId("adv-search-submit")->click();
109     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
110     $this->verifyNoErrors();
111     // On vérifie le dossier "AZ0130551200001" apparaît
112     $this->assertRegExp("/^[\s\S]*AZ 013055 12 00001[\s\S]*$/", $this->byCssSelector("#tab-dossier_autorisation .tab-tab")->text());
113 softime 2267 // On se déconnecte
114     $this->logout();
115     }
116    
117     /**
118 softime 2263 * Test les liens vers le SIG
119     */
120 nmeucci 3049 public function test_03_01_lien_localisation_dossier() {
121 nhaye 2205
122 nmeucci 3049 // Test en CHEF DE SERVICE
123    
124     // On se connecte en tant que "chef"
125     $this->login("chef", "chef");
126     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
127     $this->verifyNoErrors();
128     // On clique sur le lien "Mes encours" dans le menu
129     $this->byLinkText("Recherche")->click();
130     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
131     $this->verifyNoErrors();
132     // Test multi parcelles
133     // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
134     $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-AZ0130551200001P0")->click();
135     sleep(5);
136     // Liste les fenêtres
137     $windows = $this->windowHandles();
138     // Change la fenêtre
139     $this->window($windows[1]);
140     // On vérifie qu'il n'y ait pas d'erreur
141     $this->verifynoerrors();
142     // On vérifie que le text est présent
143 vpihour 3191 $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp?[KEY=VM_PCI_PARC_MPM*/201806AB0001]&[KEY=VM_PCI_PARC_MPM*/201806AB0002]&[KEY=VM_PCI_PARC_MPM*/201806%20AB0003]&[KEY=VM_PCI_PARC_MPM*/201806%20AB0004]&[KEY=VM_PCI_PARC_MPM*/201806%20AB0005]&MAX_SCALE=500', $this->url());
144 nmeucci 3049 // On ferme la fenêtre
145     $this->closeWindow();
146     // On change le focus de la fenêtre
147     $this->window($windows[0]);
148     // Test une parcelle
149     // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
150     $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-PD0130551200001P0")->click();
151     sleep(5);
152     // Liste les fenêtres
153     $windows = $this->windowHandles();
154     // Change la fenêtre
155     $this->window($windows[1]);
156     // On vérifie qu'il n'y ait pas d'erreur
157     $this->verifynoerrors();
158     // On vérifie que le text est présent
159 vpihour 3190 $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp?KEY=VM_PCI_PARC_MPM*/201805AB0009&MAX_SCALE=500', $this->url());
160 nmeucci 3049 // On ferme la fenêtre
161     $this->closeWindow();
162     // On change le focus de la fenêtre
163     $this->window($windows[0]);
164     // Test avec geom
165     // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
166     $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-PC0130551200001P0")->click();
167     sleep(5);
168     // Liste les fenêtres
169     $windows = $this->windowHandles();
170     // Change la fenêtre
171     $this->window($windows[1]);
172     // On vérifie qu'il n'y ait pas d'erreur
173     $this->verifynoerrors();
174     // On vérifie que le text est présent
175     $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp?KEY=ADS_EMPRISE*/PC0130551200001P0&SELECT=true', $this->url());
176     // On ferme la fenêtre
177     $this->closeWindow();
178     // On change le focus de la fenêtre
179     $this->window($windows[0]);
180     // Test sans geom nin références cadastrales
181     // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
182     $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-PC0130551200002P0")->click();
183     sleep(5);
184     // Liste les fenêtres
185     $windows = $this->windowHandles();
186     // Change la fenêtre
187     $this->window($windows[1]);
188     // On vérifie qu'il n'y ait pas d'erreur
189     $this->verifynoerrors();
190     // On vérifie que le text est présent
191     $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp', $this->url());
192     // On ferme la fenêtre
193     $this->closeWindow();
194     // On change le focus de la fenêtre
195     $this->window($windows[0]);
196     // On se déconnecte
197     $this->logout();
198     }
199    
200     /**
201     * Test les liens vers le SIG
202     */
203     public function test_03_02_lien_localisation_dossier() {
204    
205     // Test en DIVISIONNAIRE
206    
207     // On se connecte en tant que "divi"
208     $this->login("divi", "divi");
209     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
210     $this->verifyNoErrors();
211     // On clique sur le lien "Mes encours" dans le menu
212     $this->byLinkText("Recherche")->click();
213     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
214     $this->verifyNoErrors();
215     // Test multi parcelles
216     // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
217     $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-AZ0130551200001P0")->click();
218     sleep(5);
219     // Liste les fenêtres
220     $windows = $this->windowHandles();
221     // Change la fenêtre
222     $this->window($windows[1]);
223     // On vérifie qu'il n'y ait pas d'erreur
224     $this->verifynoerrors();
225     // On vérifie que le text est présent
226 vpihour 3191 $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp?[KEY=VM_PCI_PARC_MPM*/201806AB0001]&[KEY=VM_PCI_PARC_MPM*/201806AB0002]&[KEY=VM_PCI_PARC_MPM*/201806%20AB0003]&[KEY=VM_PCI_PARC_MPM*/201806%20AB0004]&[KEY=VM_PCI_PARC_MPM*/201806%20AB0005]&MAX_SCALE=500', $this->url());
227 nmeucci 3049 // On ferme la fenêtre
228     $this->closeWindow();
229     // On change le focus de la fenêtre
230     $this->window($windows[0]);
231     // Test une parcelle
232     // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
233     $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-PD0130551200001P0")->click();
234     sleep(5);
235     // Liste les fenêtres
236     $windows = $this->windowHandles();
237     // Change la fenêtre
238     $this->window($windows[1]);
239     // On vérifie qu'il n'y ait pas d'erreur
240     $this->verifynoerrors();
241     // On vérifie que le text est présent
242 vpihour 3190 $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp?KEY=VM_PCI_PARC_MPM*/201805AB0009&MAX_SCALE=500', $this->url());
243 nmeucci 3049 // On ferme la fenêtre
244     $this->closeWindow();
245     // On change le focus de la fenêtre
246     $this->window($windows[0]);
247     // Test avec geom
248     // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
249     $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-PC0130551200001P0")->click();
250     sleep(5);
251     // Liste les fenêtres
252     $windows = $this->windowHandles();
253     // Change la fenêtre
254     $this->window($windows[1]);
255     // On vérifie qu'il n'y ait pas d'erreur
256     $this->verifynoerrors();
257     // On vérifie que le text est présent
258     $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp?KEY=ADS_EMPRISE*/PC0130551200001P0&SELECT=true', $this->url());
259     // On ferme la fenêtre
260     $this->closeWindow();
261     // On change le focus de la fenêtre
262     $this->window($windows[0]);
263     // Test sans geom nin références cadastrales
264     // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
265     $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-PC0130551200002P0")->click();
266     sleep(5);
267     // Liste les fenêtres
268     $windows = $this->windowHandles();
269     // Change la fenêtre
270     $this->window($windows[1]);
271     // On vérifie qu'il n'y ait pas d'erreur
272     $this->verifynoerrors();
273     // On vérifie que le text est présent
274     $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp', $this->url());
275     // On ferme la fenêtre
276     $this->closeWindow();
277     // On change le focus de la fenêtre
278     $this->window($windows[0]);
279     // On se déconnecte
280     $this->logout();
281     }
282    
283     /**
284     * Test les liens vers le SIG
285     */
286     public function test_03_03_lien_localisation_dossier() {
287    
288     // Test en INSTRUCTEUR
289    
290 softime 2263 // On se connecte en tant que "instr"
291     $this->login("instr", "instr");
292     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
293     $this->verifyNoErrors();
294     // On clique sur le lien "Mes encours" dans le menu
295     $this->byLinkText("Recherche")->click();
296     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
297     $this->verifyNoErrors();
298     // Test multi parcelles
299     // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
300     $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-AZ0130551200001P0")->click();
301     sleep(5);
302     // Liste les fenêtres
303     $windows = $this->windowHandles();
304     // Change la fenêtre
305     $this->window($windows[1]);
306     // On vérifie qu'il n'y ait pas d'erreur
307     $this->verifynoerrors();
308     // On vérifie que le text est présent
309 vpihour 3191 $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp?[KEY=VM_PCI_PARC_MPM*/201806AB0001]&[KEY=VM_PCI_PARC_MPM*/201806AB0002]&[KEY=VM_PCI_PARC_MPM*/201806%20AB0003]&[KEY=VM_PCI_PARC_MPM*/201806%20AB0004]&[KEY=VM_PCI_PARC_MPM*/201806%20AB0005]&MAX_SCALE=500', $this->url());
310 softime 2263 // On ferme la fenêtre
311     $this->closeWindow();
312     // On change le focus de la fenêtre
313     $this->window($windows[0]);
314     // Test une parcelle
315     // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
316     $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-PD0130551200001P0")->click();
317     sleep(5);
318     // Liste les fenêtres
319     $windows = $this->windowHandles();
320     // Change la fenêtre
321     $this->window($windows[1]);
322     // On vérifie qu'il n'y ait pas d'erreur
323     $this->verifynoerrors();
324     // On vérifie que le text est présent
325 vpihour 3190 $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp?KEY=VM_PCI_PARC_MPM*/201805AB0009&MAX_SCALE=500', $this->url());
326 softime 2263 // On ferme la fenêtre
327     $this->closeWindow();
328     // On change le focus de la fenêtre
329     $this->window($windows[0]);
330     // Test avec geom
331     // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
332     $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-PC0130551200001P0")->click();
333     sleep(5);
334     // Liste les fenêtres
335     $windows = $this->windowHandles();
336     // Change la fenêtre
337     $this->window($windows[1]);
338     // On vérifie qu'il n'y ait pas d'erreur
339     $this->verifynoerrors();
340     // On vérifie que le text est présent
341 softime 2266 $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp?KEY=ADS_EMPRISE*/PC0130551200001P0&SELECT=true', $this->url());
342 softime 2263 // On ferme la fenêtre
343     $this->closeWindow();
344     // On change le focus de la fenêtre
345     $this->window($windows[0]);
346     // Test sans geom nin références cadastrales
347     // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
348     $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-PC0130551200002P0")->click();
349     sleep(5);
350     // Liste les fenêtres
351     $windows = $this->windowHandles();
352     // Change la fenêtre
353     $this->window($windows[1]);
354     // On vérifie qu'il n'y ait pas d'erreur
355     $this->verifynoerrors();
356     // On vérifie que le text est présent
357     $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp', $this->url());
358     // On ferme la fenêtre
359     $this->closeWindow();
360     // On change le focus de la fenêtre
361     $this->window($windows[0]);
362     // On se déconnecte
363     $this->logout();
364     }
365 nhaye 2205
366 softime 2263 /**
367 softime 2762 * Test la synchronisation des requêtes.
368     * XXX Le message retourné par le synchronisation peut être différent si le
369     * test n'est pas lancé dans le testsuite.
370 softime 2721 */
371     public function test_04_synchro_contrainte() {
372    
373     // On se connecte en tant que "admin"
374     $this->login("admin", "admin");
375     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
376     $this->verifyNoErrors();
377     // On clique sur le lien "Paramétrage Dossiers" dans le menu
378     $this->byLinkText("Paramétrage Dossiers")->click();
379     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
380     $this->verifyNoErrors();
381     // On clique sur le lien "Synchronisation Des Contraintes" dans le menu
382     $this->byLinkText("Synchronisation Des Contraintes")->click();
383     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
384     $this->verifyNoErrors();
385     // On clique sur le bouton "Synchroniser"
386     $this->byId("button-contrainte-synchronisation-synchroniser")->click();
387     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
388     $this->verifyNoErrors();
389     // On vérifie le message retourné
390 softime 2757 $this->assertContains("Aucune contraintes à ajouter.", $this->byCssSelector(".message")->text());
391 vpihour 2782 $this->assertContains("2 contrainte(s) modifiée(s).", $this->byCssSelector(".message")->text());
392 softime 2757 $this->assertContains("Aucune contraintes à archiver.", $this->byCssSelector(".message")->text());
393 softime 2721 // On clique sur le lien "Contrainte" dans le menu
394     $this->byLinkText("Contrainte")->click();
395     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
396     $this->verifyNoErrors();
397     // On vérifie que la contrainte est ajoutée
398     $this->assertContains("Une contrainte du PLU", $this->byCssSelector(".tab-tab")->text());
399     // On clique pour afficher les éléments archivés
400     $this->byLinkText("Afficher les éléments expirés")->click();
401     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
402     $this->verifyNoErrors();
403     // On vérifie une contrainte qui doit être archivée
404     $this->assertContains("emplacement réservé pour équipement public (superstructure)", $this->byCssSelector(".tab-tab")->text());
405     // On se déconnecte
406     $this->logout();
407     }
408    
409     /**
410 softime 2263 * Test les différents traitements sur le SIG
411     */
412 softime 2721 public function test_05_geolocalisation() {
413 softime 2178
414 softime 2263 // On se connecte en tant que "instr"
415     $this->login("instr", "instr");
416     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
417     $this->verifyNoErrors();
418     // On clique sur le lien "Mes encours" dans le menu
419     $this->byLinkText("Mes Encours")->click();
420     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
421     $this->verifyNoErrors();
422     // On clique sur le lien "AZ0130551200001P0" dans le tableau
423     $this->byLinkText("AZ 013055 12 00001P0")->click();
424     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
425     $this->verifyNoErrors();
426     // On clique sur "Géolocalisation"
427     $this->byLinkText("Géolocalisation")->click();
428     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
429     $this->verifyNoErrors();
430     // On vérifie les messages des traitements "Vérifier les parcelles",
431     // "Calculer l'emprise", "Dessiner l'emprise", "Calculer le centroïde"
432     // et "Récupérer les contraintes"
433     $this->assertEquals("Action non effectuée.", $this->byId("verif_parcelle")->text());
434     $this->assertEquals("Action non effectuée.", $this->byId("calcul_emprise")->text());
435     $this->assertEquals("Action non effectuée.", $this->byId("dessin_emprise")->text());
436     $this->assertEquals("Action non effectuée.", $this->byId("calcul_centroide")->text());
437     $this->assertEquals("Action non effectuée.", $this->byId("recup_contrainte")->text());
438     // On vérifie les données du dossier
439 softime 2267 $this->assertEquals("806AB0001A0005;", $this->byId("references_cadastrales")->text());
440 nhaye 2897 $this->assertEquals("113 boulevard pont de vivaux 13010 Marseille", $this->byId("adresse")->text());
441 softime 2263 // On clique sur le bouton "Vérifier les parcelles"
442     $this->byId("verif_parcelle-button")->click();
443     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
444     $this->verifyNoErrors();
445     // On vérifie les nouvelles données après le traitement
446     $this->assertRegExp("/^[\s\S]*Les parcelles existent.[\s\S]*$/", $this->byId("verif_parcelle")->text());
447     // On clique sur le bouton "Calculer l'emprise"
448     $this->byId("calcul_emprise-button")->click();
449     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
450     $this->verifyNoErrors();
451     // On vérifie les nouvelles données après le traitement
452     $this->assertRegExp("/^[\s\S]*L'emprise a été calculé.[\s\S]*$/", $this->byId("calcul_emprise")->text());
453     // On clique sur le bouton "Dessiner l'emprise"
454     $this->byId("dessin_emprise-button")->click();
455     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
456     $this->verifyNoErrors();
457     // On vérifie les nouvelles données après le traitement
458     $this->assertRegExp("/^[\s\S]*Redirigé vers ElyxWeb.[\s\S]*$/", $this->byId("dessin_emprise")->text());
459     // Liste les fenêtres
460     $windows = $this->windowHandles();
461     // On vérifie que l'onglet s'est ouvert
462     $this->assertTrue(count($windows) == 2);
463     // Change la fenêtre
464     $this->window($windows[1]);
465     // On ferme la fenêtre
466     $this->closeWindow();
467     // On change le focus de la fenêtre
468     $this->window($windows[0]);
469     // On clique sur le bouton "Calculer le centroïde"
470     $this->byId("calcul_centroide-button")->click();
471     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
472     $this->verifyNoErrors();
473     // On vérifie les nouvelles données après le traitement
474     $this->assertRegExp("/^[\s\S]*Le centroide a été calculé[\s\S]*$/", $this->byId("calcul_centroide")->text());
475 nhaye 2897 sleep(10);
476 softime 2263 $this->assertEquals("Localiser POINT(122 223)", $this->byCssSelector("#sousform-sig_elyx #centroide")->text());
477     // On clique sur le bouton "Récupérer les contraintes"
478     $this->byId("recup_contrainte-button")->click();
479     // On vérifie le message affiché
480     $this->assertEquals('Êtes vous sur de vouloir récupérer les contraintes ?', $this->alertText());
481     // On clique sur "Annuler" dans la boite de dialogue qui apparaît
482     $this->dismissAlert();sleep(1);
483     // On vérifie que le message et les données n'ont pas été modifiés
484     $this->assertEquals("Action non effectuée.", $this->byId("recup_contrainte")->text());
485     $this->assertEquals("", $this->byId("servitude")->text());
486     // On clique sur le bouton "Récupérer les contraintes"
487     $this->byId("recup_contrainte-button")->click();
488     // On clique sur "OK" dans la boite de dialogue qui apparaît
489     $this->acceptAlert();sleep(1);
490     // On vérifie les nouvelles données après le traitement
491 softime 2721 $this->assertContains("Les contraintes ont été récupérées.", $this->byId("recup_contrainte")->text());
492     // On vérifie le message du champ contrainte
493     $this->assertContains("Aucune contraintes ajoutées depuis l'application", $this->byCssSelector("#sousform-sig_elyx #contrainte")->text());
494 softime 2848 $this->assertContains("2 contrainte(s) ajoutée(s) depuis le SIG", $this->byCssSelector("#sousform-sig_elyx #contrainte")->text());
495 softime 2263 // On clique sur le bouton retour
496     $this->byId("retour-button")->click();
497     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
498     $this->verifyNoErrors();
499     // On se déconnecte
500     $this->logout();
501     }
502 softime 2217
503 softime 2263 /**
504 softime 2762 * Test le bouton permettant de lancer tous les traitements
505     * XXX lorsque la ressource de test le permettra, tester en cas d'erreur
506     * d'un traitements
507 softime 2723 */
508 softime 2762 public function test_06_all_geolocalisation_treatments() {
509 softime 2723
510     // On se connecte en tant que "instr"
511     $this->login("instr", "instr");
512     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
513     $this->verifyNoErrors();
514     // On clique sur le lien "Mes encours" dans le menu
515     $this->byLinkText("Mes Encours")->click();
516     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
517     $this->verifyNoErrors();
518 softime 2762 // On clique sur le lien "DP 013055 12 00001P0" dans le tableau
519 softime 2723 $this->byLinkText("DP 013055 12 00001P0")->click();
520     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
521     $this->verifyNoErrors();
522 softime 2762 // On clique sur "Géolocalisation"
523     $this->byLinkText("Géolocalisation")->click();
524     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
525     $this->verifyNoErrors();
526     // On vérifie les messages des traitements "Vérifier les parcelles",
527     // "Calculer l'emprise", "Dessiner l'emprise", "Calculer le centroïde"
528     // et "Récupérer les contraintes"
529     $this->assertEquals("Action non effectuée.", $this->byId("verif_parcelle")->text());
530     $this->assertEquals("Action non effectuée.", $this->byId("calcul_emprise")->text());
531     $this->assertEquals("Action non effectuée.", $this->byId("dessin_emprise")->text());
532     $this->assertEquals("Action non effectuée.", $this->byId("calcul_centroide")->text());
533     $this->assertEquals("Action non effectuée.", $this->byId("recup_contrainte")->text());
534     // On vérifie les données du dossier
535     // XXX Modifier les données de test pour ajouter des références
536     // cadastrales et l'adresse
537     // On clique sur le bouton "J'ai de la chance"
538     $this->byId("chance-button")->click();
539     // On vérifie le message affiché
540     $this->assertEquals('Êtes vous sur de vouloir récupérer les contraintes ?', $this->alertText());
541     // On clique sur "OK" dans la boite de dialogue qui apparaît
542     $this->acceptAlert();sleep(5);
543     // On vérifie tous les messages
544     $this->assertRegExp("/^[\s\S]*Les parcelles existent.[\s\S]*$/", $this->byId("verif_parcelle")->text());
545     $this->assertRegExp("/^[\s\S]*L'emprise a été calculé.[\s\S]*$/", $this->byId("calcul_emprise")->text());
546     $this->assertEquals("Action non effectuée.", $this->byId("dessin_emprise")->text());
547     $this->assertRegExp("/^[\s\S]*Le centroide a été calculé[\s\S]*$/", $this->byId("calcul_centroide")->text());
548     $this->assertRegExp("/^[\s\S]*Les contraintes ont été récupérées.[\s\S]*$/", $this->byId("recup_contrainte")->text());
549     // On vérifie toutes les données
550     $this->assertEquals("Localiser POINT(122 223)", $this->byCssSelector("#sousform-sig_elyx #centroide")->text());
551     $this->assertContains("Aucune contraintes ajoutées depuis l'application", $this->byCssSelector("#sousform-sig_elyx #contrainte")->text());
552 softime 2848 $this->assertContains("2 contrainte(s) ajoutée(s) depuis le SIG", $this->byCssSelector("#sousform-sig_elyx #contrainte")->text());
553 softime 2762 // On clique sur le bouton retour
554     $this->byId("retour-button")->click();
555     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
556     $this->verifyNoErrors();
557     // On se déconnecte
558     $this->logout();
559     }
560    
561     /**
562     * Test l'ajout d'une contrainte sur un dossier.
563     */
564     public function test_07_dossier_contrainte_add() {
565    
566     // On se connecte en tant que "instr"
567     $this->login("instr", "instr");
568     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
569     $this->verifyNoErrors();
570     // On clique sur le lien "Mes encours" dans le menu
571     $this->byLinkText("Mes Encours")->click();
572     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
573     $this->verifyNoErrors();
574     // On clique sur le lien "DP 013055 12 00001P0" dans le tableau
575     $this->byLinkText("DP 013055 12 00001P0")->click();
576     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
577     $this->verifyNoErrors();
578 softime 2723 // On clique sur "Contrainte(s)"
579     $this->byId("dossier_contrainte")->click();
580     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
581     $this->verifyNoErrors();
582     // On clique sur "Ajouter des contraintes"
583     $this->byId("action-soustab-dossier_contrainte-corner-ajouter")->click();
584     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
585     $this->verifyNoErrors();
586     // On déploie le groupe "Contraintes Openads"
587     $this->byCssSelector("#fieldset-sousform-dossier_contrainte-contraintes-openads legend")->click();
588     sleep(1);
589     // On déploie le sous-groupe "Environnement"
590     $this->byCssSelector("#fieldset-sousform-dossier_contrainte-environnement legend")->click();
591     sleep(1);
592     // On clique sur la checkbox de la contrainte
593     $this->byId("contrainte_5")->click();
594     // On applique les changements
595     $this->byCssSelector("input[value='Appliquer les changements']")->click();sleep(1);
596     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
597     $this->verifyNoErrors();
598     // On vérifie le message de validation
599     $this->assertContains("La contrainte Pollution puits a été ajoutée au dossier.", $this->byCssSelector(".message")->text());
600     // On clique sur le bouton "Retour"
601     $this->byLinkText("Retour")->click();sleep(1);
602     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
603     $this->verifyNoErrors();
604     // Vérifie que la contrainte est présente
605     $this->assertContains("Le puits d'une profondeur de [...] est pollué.", $this->byId("sousform-dossier_contrainte")->text());
606 softime 2762 // On se déconnecte
607     $this->logout();
608    
609     }
610    
611     /**
612     * Test l'affichage des contraintes sur la fiche du DI.
613     */
614     public function test_08_affichage_contrainte_DI() {
615    
616     // On se connecte en tant que "instr"
617     $this->login("instr", "instr");
618 softime 2723 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
619     $this->verifyNoErrors();
620 softime 2762 // On clique sur le lien "Mes encours" dans le menu
621     $this->byLinkText("Mes Encours")->click();
622 softime 2723 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
623     $this->verifyNoErrors();
624 softime 2762 // On clique sur le lien "DP 013055 12 00001P0" dans le tableau
625     $this->byLinkText("DP 013055 12 00001P0")->click();
626 softime 2723 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
627     $this->verifyNoErrors();
628 nmeucci 2851 // Ouvre le fieldset contraintes liées
629     $this->byId("fieldset_contraintes_liees")->click();
630 softime 2762 // On vérifie les contraintes affichées
631     $this->assertContains("Une contrainte du PLU",
632     $this->byId("liste_contrainte")->text());
633     $this->assertContains("Le puits d'une profondeur de [...] est pollué.",
634     $this->byId("liste_contrainte")->text());
635     // On se déconnecte
636     $this->logout();
637    
638     }
639    
640     /**
641     * Change la condition d'affichage des contraintes sur la fiche d'un DI et
642     * test l'affichage.
643     */
644     public function test_09_option_contrainte_di() {
645    
646     // On se connecte en tant que "admin"
647     $this->login("admin", "admin");
648 softime 2723 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
649     $this->verifyNoErrors();
650 softime 2762 // On clique sur le lien "Administration" dans le menu
651     $this->byLinkText("Administration")->click();
652 softime 2723 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
653     $this->verifyNoErrors();
654 softime 2762 // // On clique sur le lien "Paramètre" dans le menu
655     $this->byLinkText("Paramètre")->click();
656     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
657     $this->verifyNoErrors();
658     // On remplis le champs de recherche simple
659     $this->byCssSelector("input[name='recherche']")->value('option_contrainte_di');
660     // On clique sur le bouton recherche
661     $this->byCssSelector(".ui-button")->click();
662     // On clique sur le résultat
663     $this->byLinkText("option_contrainte_di")->click();
664     // On clique sur le bouton "Modifier"
665     $this->byId('action-form-om_parametre-modifier')->click();
666     // On change la valeur par "sig_externe"
667     $this->byId('valeur')->clear();
668     $this->byId('valeur')->value('liste_ssgroupe=environnement');
669     // On valide la modification
670     $this->byCssSelector("input[value='Modifier']")->click();
671 softime 2723 // On vérifie le message de validation
672 softime 2762 $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#tabs-1 .message")->text());
673     // On clique sur le bouton 'Retour'
674 softime 2723 $this->byLinkText("Retour")->click();
675 softime 2762 // On vérifie les nouvelles données
676     $this->assertEquals("liste_ssgroupe=environnement", $this->byId("valeur")->text());
677     // On se déconnecte
678     $this->deconnect();
679    
680     // On se connecte en tant que "instr"
681     $this->login("instr", "instr");
682 softime 2723 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
683     $this->verifyNoErrors();
684 softime 2762 // On clique sur le lien "Mes encours" dans le menu
685     $this->byLinkText("Mes Encours")->click();
686     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
687     $this->verifyNoErrors();
688     // On clique sur le lien "DP 013055 12 00001P0" dans le tableau
689     $this->byLinkText("DP 013055 12 00001P0")->click();
690     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
691     $this->verifyNoErrors();
692 nmeucci 2851 // Ouvre le fieldset contraintes liées
693     $this->byId("fieldset_contraintes_liees")->click();
694 softime 2762 // On vérifie les contraintes affichées
695     $this->assertNotContains("Une contrainte du PLU",
696     $this->byId("liste_contrainte")->text());
697     $this->assertContains("Le puits d'une profondeur de [...] est pollué.",
698     $this->byId("liste_contrainte")->text());
699 softime 2723 // On se déconnecte
700     $this->logout();
701     }
702    
703     /**
704 softime 2762 * Test la modification et la suppression d'une contrainte sur un dossier.
705 softime 2263 */
706 softime 2762 public function test_10_dossier_contrainte_modif_suppr() {
707 nhaye 2239
708 softime 2263 // On se connecte en tant que "instr"
709     $this->login("instr", "instr");
710     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
711     $this->verifyNoErrors();
712     // On clique sur le lien "Mes encours" dans le menu
713     $this->byLinkText("Mes Encours")->click();
714     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
715     $this->verifyNoErrors();
716 softime 2762 // On clique sur le lien "DP 013055 12 00001P0" dans le tableau
717 softime 2263 $this->byLinkText("DP 013055 12 00001P0")->click();
718     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
719     $this->verifyNoErrors();
720 softime 2762 // On clique sur "Contrainte(s)"
721     $this->byId("dossier_contrainte")->click();
722 softime 2263 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
723     $this->verifyNoErrors();
724 softime 2762 // On clique sur le résultat
725     $this->byLinkText("Pollution puits")->click();
726     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
727     $this->verifyNoErrors();
728     // On clique pour modifier la contrainte
729     $this->byId("action-sousform-dossier_contrainte-modifier")->click();sleep(1);
730     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
731     $this->verifyNoErrors();
732     // On modifie le texte complété
733     $this->byId("texte_complete")->clear();
734     $this->byId("texte_complete")->value("Texte complété de la contrainte sur le dossier.");
735     // On valide le formulaire
736     $this->byXPath("//input[@value='Modifier']")->click();
737     // On vérifie le message de validation
738 vpihour 2782 $this->assertContains("Vos modifications ont bien été enregistrées.", $this->byCssSelector("#sousform-dossier_contrainte .message .text")->text());
739 softime 2263 // On clique sur le bouton retour
740 softime 2762 $this->byLinkText("Retour")->click();sleep(1);
741 softime 2263 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
742     $this->verifyNoErrors();
743 softime 2762 // On clique sur le résultat
744     $this->byLinkText("Pollution puits")->click();
745     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
746     $this->verifyNoErrors();
747     // On supprime la contrainte
748     $this->byId("action-sousform-dossier_contrainte-supprimer")->click();
749     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
750     $this->verifyNoErrors();
751     // On valide le formulaire
752     $this->byXPath("//input[@value='Supprimer']")->click();
753     // On vérifie le message de validation
754 vpihour 2782 $this->assertContains("La suppression a été correctement effectuée.", $this->byCssSelector("#sousform-dossier_contrainte .message .text")->text());
755 softime 2762 // On clique sur le bouton retour
756     $this->byLinkText("Retour")->click();
757     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
758     $this->verifyNoErrors();
759 softime 2263 }
760 nhaye 2239
761 softime 2217 /**
762 nhaye 2239 * Test la sélection de dossiers dans le SIG vers openADS
763 softime 2217 */
764 softime 2723 public function test_08_selection_dossiers_sig() {
765 softime 2217 // On se connecte en tant que "instr"
766     $this->login("instr", "instr");
767 nhaye 2239 // On passe une liste de dossiers à l'url de redirection
768     $this->url("http://localhost/openads/app/affiche_selection_tab.php?dossiers=AT0130551200001P0;CU0130551200001P0");
769     // On vérifie qu'il n'y a pas d'erreur
770 softime 2217 $this->verifyNoErrors();
771 nhaye 2239 // vérification de l'affichage des dossiers dans le tableau
772     $this->assertEquals("Instruction > Dossiers D'instruction", $this->byCssSelector("#title h2")->text());
773     $this->assertContains("AT 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
774     $this->assertContains("CU 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
775     // On ne passe pas de dossiers à l'url de redirection
776     $this->url("http://localhost/openads/app/affiche_selection_tab.php");
777     // On vérifie qu'il n'y a pas d'erreur
778 softime 2217 $this->verifyNoErrors();
779 nhaye 2239 // vérification de l'affichage des dossiers dans le tableau
780     $this->assertEquals("Instruction > Dossiers D'instruction", $this->byCssSelector("#title h2")->text());
781     $this->assertContains("AT 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
782     $this->assertContains("AZ 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
783     $this->assertContains("CU 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
784     $this->assertContains("DP 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
785     $this->assertContains("PA 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
786     $this->assertContains("PC 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
787     $this->assertContains("PC 013055 12 00002P0",$this->byCssSelector(".tab-tab")->text());
788     $this->assertContains("PD 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
789    
790     // On passe un dossiers au à l'url de redirection
791     $this->url("http://localhost/openads/app/affiche_selection_tab.php?dossiers=AT0130551200001P0");
792     // On vérifie qu'il n'y a pas d'erreur
793 softime 2217 $this->verifyNoErrors();
794 nhaye 2239 // vérification de l'affichage des dossiers dans le tableau
795     $this->assertEquals("Instruction > Dossiers D'instruction", $this->byCssSelector("#title h2")->text());
796     $this->assertContains("AT 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
797    
798 softime 2217 // On se déconnecte
799     $this->logout();
800     }
801 softime 2273
802     /**
803     * Active l'option sig avec la valeur nécessaire pour la suite des tests
804     */
805 softime 2723 public function test_09_desactive_option_sig() {
806 softime 2273
807     // On se connecte en tant que "admin"
808     $this->login("admin", "admin");
809     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
810     $this->verifyNoErrors();
811     // On clique sur le lien "Administration" dans le menu
812     $this->byLinkText("Administration")->click();
813     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
814     $this->verifyNoErrors();
815     // // On clique sur le lien "Paramètre" dans le menu
816     $this->byLinkText("Paramètre")->click();
817     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
818     $this->verifyNoErrors();
819     // On remplis le champs de recherche simple
820     $this->byCssSelector("input[name='recherche']")->value('option_sig');
821     // On clique sur le bouton recherche
822     $this->byCssSelector(".ui-button")->click();
823     // On clique sur le résultat
824     $this->byLinkText("option_sig")->click();
825     // On clique sur le bouton "Modifier"
826     $this->byId('action-form-om_parametre-modifier')->click();
827     // On change la valeur par "aucun"
828     $this->byId('valeur')->clear();
829     $this->byId('valeur')->value('aucun');
830     // On valide la modification
831     $this->byCssSelector("input[value='Modifier']")->click();
832     // On vérifie le message de validation
833     $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#tabs-1 .message")->text());
834     // On clique sur le bouton 'Retour'
835     $this->byLinkText("Retour")->click();
836     // On vérifie les nouvelles données
837     $this->assertEquals("aucun", $this->byId("valeur")->text());
838     // On se déconnecte
839     $this->logout();
840     }
841    
842 softime 2171 }
843     ?>

Properties

Name Value
svn:executable *
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26