/[openfoncier]/branches/3.14.x/tests/testGeolocalisation.php
ViewVC logotype

Contents of /branches/3.14.x/tests/testGeolocalisation.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2739 - (show annotations)
Fri Feb 14 13:55:39 2014 UTC (10 years, 11 months ago) by softime
Original Path: trunk/tests/testGeolocalisation.php
File size: 30168 byte(s)
- Amélioration des tests pour qu'ils puissent passer sur coccyx
- Nettoyage du code pour le module contrainte des contraintes

1 <?php
2 /**
3 * Fichier contenant la classe de test Geolocalisation
4 *
5 * @package openads
6 * @version SVN : $Id$
7 */
8
9 // Fichiers requis
10 require_once "base.php";
11
12 /**
13 * Classe de test sur les actions liées à la géolocalisation
14 *
15 * Dossier d'instruction utilisé : AZ 013055 12 00001P0 et DP 013055 12 00001P0
16 */
17 class Geolocalisation extends Base2TestCase {
18
19 /**
20 * Active l'option sig avec la valeur nécessaire pour la suite des tests
21 */
22 public function test_01_active_option_sig() {
23
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 * 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 public function test_02_recherche_avancee_parcelle() {
66
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 // On clique sur le lien "Recherche" dans le menu
72 $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 $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 // On se déconnecte
114 $this->logout();
115 }
116
117 /**
118 * Test les liens vers le SIG
119 */
120 public function test_03_lien_localisation_dossier() {
121
122 // On se connecte en tant que "instr"
123 $this->login("instr", "instr");
124 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
125 $this->verifyNoErrors();
126 // On clique sur le lien "Mes encours" dans le menu
127 $this->byLinkText("Recherche")->click();
128 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
129 $this->verifyNoErrors();
130 // Test multi parcelles
131 // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
132 $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-AZ0130551200001P0")->click();
133 sleep(5);
134 // Liste les fenêtres
135 $windows = $this->windowHandles();
136 // Change la fenêtre
137 $this->window($windows[1]);
138 // On vérifie qu'il n'y ait pas d'erreur
139 $this->verifynoerrors();
140 // On vérifie que le text est présent
141 $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp?[KEY=VM_PCI_PARC_MPM*/201806%20AB0001]&[KEY=VM_PCI_PARC_MPM*/201806%20AB0002]&[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());
142 // On ferme la fenêtre
143 $this->closeWindow();
144 // On change le focus de la fenêtre
145 $this->window($windows[0]);
146 // Test une parcelle
147 // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
148 $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-PD0130551200001P0")->click();
149 sleep(5);
150 // Liste les fenêtres
151 $windows = $this->windowHandles();
152 // Change la fenêtre
153 $this->window($windows[1]);
154 // On vérifie qu'il n'y ait pas d'erreur
155 $this->verifynoerrors();
156 // On vérifie que le text est présent
157 $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp?KEY=VM_PCI_PARC_MPM*/201805%20AB0009&MAX_SCALE=500', $this->url());
158 // On ferme la fenêtre
159 $this->closeWindow();
160 // On change le focus de la fenêtre
161 $this->window($windows[0]);
162 // Test avec geom
163 // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
164 $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-PC0130551200001P0")->click();
165 sleep(5);
166 // Liste les fenêtres
167 $windows = $this->windowHandles();
168 // Change la fenêtre
169 $this->window($windows[1]);
170 // On vérifie qu'il n'y ait pas d'erreur
171 $this->verifynoerrors();
172 // On vérifie que le text est présent
173 $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp?KEY=ADS_EMPRISE*/PC0130551200001P0&SELECT=true', $this->url());
174 // On ferme la fenêtre
175 $this->closeWindow();
176 // On change le focus de la fenêtre
177 $this->window($windows[0]);
178 // Test sans geom nin références cadastrales
179 // On clique sur le lien sig du dossier "AZ0130551200001P0" dans le tableau
180 $this->byId("action-tab-dossier_instruction-left-localiser-sig-externe-PC0130551200002P0")->click();
181 sleep(5);
182 // Liste les fenêtres
183 $windows = $this->windowHandles();
184 // Change la fenêtre
185 $this->window($windows[1]);
186 // On vérifie qu'il n'y ait pas d'erreur
187 $this->verifynoerrors();
188 // On vérifie que le text est présent
189 $this->assertEquals('http://sig.vdm.mars/elyx/layouts/vdm.jsp', $this->url());
190 // On ferme la fenêtre
191 $this->closeWindow();
192 // On change le focus de la fenêtre
193 $this->window($windows[0]);
194 // On se déconnecte
195 $this->logout();
196
197 }
198
199 /**
200 * Test la synchronisation des requêtes
201 */
202 public function test_04_synchro_contrainte() {
203
204 // On se connecte en tant que "admin"
205 $this->login("admin", "admin");
206 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
207 $this->verifyNoErrors();
208 // On clique sur le lien "Paramétrage Dossiers" dans le menu
209 $this->byLinkText("Paramétrage Dossiers")->click();
210 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
211 $this->verifyNoErrors();
212 // On clique sur le lien "Synchronisation Des Contraintes" dans le menu
213 $this->byLinkText("Synchronisation Des Contraintes")->click();
214 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
215 $this->verifyNoErrors();
216 // On clique sur le bouton "Synchroniser"
217 $this->byId("button-contrainte-synchronisation-synchroniser")->click();
218 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
219 $this->verifyNoErrors();
220 // On vérifie le message retourné
221 $this->assertContains("1 contrainte(s) ajoutée(s).", $this->byCssSelector(".message")->text());
222 $this->assertContains("Aucune contraintes à modifier.", $this->byCssSelector(".message")->text());
223 $this->assertContains("4 contrainte(s) archivée(s).", $this->byCssSelector(".message")->text());
224 // On clique sur le lien "Contrainte" dans le menu
225 $this->byLinkText("Contrainte")->click();
226 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
227 $this->verifyNoErrors();
228 // On vérifie que la contrainte est ajoutée
229 $this->assertContains("Une contrainte du PLU", $this->byCssSelector(".tab-tab")->text());
230 // On clique pour afficher les éléments archivés
231 $this->byLinkText("Afficher les éléments expirés")->click();
232 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
233 $this->verifyNoErrors();
234 // On vérifie une contrainte qui doit être archivée
235 $this->assertContains("emplacement réservé pour équipement public (superstructure)", $this->byCssSelector(".tab-tab")->text());
236 // On se déconnecte
237 $this->logout();
238 }
239
240 /**
241 * Test les différents traitements sur le SIG
242 */
243 public function test_05_geolocalisation() {
244
245 // On se connecte en tant que "instr"
246 $this->login("instr", "instr");
247 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
248 $this->verifyNoErrors();
249 // On clique sur le lien "Mes encours" dans le menu
250 $this->byLinkText("Mes Encours")->click();
251 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
252 $this->verifyNoErrors();
253 // On clique sur le lien "AZ0130551200001P0" dans le tableau
254 $this->byLinkText("AZ 013055 12 00001P0")->click();
255 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
256 $this->verifyNoErrors();
257 // On clique sur "Géolocalisation"
258 $this->byLinkText("Géolocalisation")->click();
259 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
260 $this->verifyNoErrors();
261 // On vérifie les messages des traitements "Vérifier les parcelles",
262 // "Calculer l'emprise", "Dessiner l'emprise", "Calculer le centroïde"
263 // et "Récupérer les contraintes"
264 $this->assertEquals("Action non effectuée.", $this->byId("verif_parcelle")->text());
265 $this->assertEquals("Action non effectuée.", $this->byId("calcul_emprise")->text());
266 $this->assertEquals("Action non effectuée.", $this->byId("dessin_emprise")->text());
267 $this->assertEquals("Action non effectuée.", $this->byId("calcul_centroide")->text());
268 $this->assertEquals("Action non effectuée.", $this->byId("recup_contrainte")->text());
269 // On vérifie les données du dossier
270 $this->assertEquals("806AB0001A0005;", $this->byId("references_cadastrales")->text());
271 $this->assertEquals("113 boulevard pont de vivaux Marseille 13010", $this->byId("adresse")->text());
272 // On clique sur le bouton "Vérifier les parcelles"
273 $this->byId("verif_parcelle-button")->click();
274 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
275 $this->verifyNoErrors();
276 // On vérifie les nouvelles données après le traitement
277 $this->assertRegExp("/^[\s\S]*Les parcelles existent.[\s\S]*$/", $this->byId("verif_parcelle")->text());
278 // On clique sur le bouton "Calculer l'emprise"
279 $this->byId("calcul_emprise-button")->click();
280 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
281 $this->verifyNoErrors();
282 // On vérifie les nouvelles données après le traitement
283 $this->assertRegExp("/^[\s\S]*L'emprise a été calculé.[\s\S]*$/", $this->byId("calcul_emprise")->text());
284 // On clique sur le bouton "Dessiner l'emprise"
285 $this->byId("dessin_emprise-button")->click();
286 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
287 $this->verifyNoErrors();
288 // On vérifie les nouvelles données après le traitement
289 $this->assertRegExp("/^[\s\S]*Redirigé vers ElyxWeb.[\s\S]*$/", $this->byId("dessin_emprise")->text());
290 // Liste les fenêtres
291 $windows = $this->windowHandles();
292 // On vérifie que l'onglet s'est ouvert
293 $this->assertTrue(count($windows) == 2);
294 // Change la fenêtre
295 $this->window($windows[1]);
296 // On ferme la fenêtre
297 $this->closeWindow();
298 // On change le focus de la fenêtre
299 $this->window($windows[0]);
300 // On clique sur le bouton "Calculer le centroïde"
301 $this->byId("calcul_centroide-button")->click();
302 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
303 $this->verifyNoErrors();
304 // On vérifie les nouvelles données après le traitement
305 $this->assertRegExp("/^[\s\S]*Le centroide a été calculé[\s\S]*$/", $this->byId("calcul_centroide")->text());
306 $this->assertEquals("Localiser POINT(122 223)", $this->byCssSelector("#sousform-sig_elyx #centroide")->text());
307 // On clique sur le bouton "Récupérer les contraintes"
308 $this->byId("recup_contrainte-button")->click();
309 // On vérifie le message affiché
310 $this->assertEquals('Êtes vous sur de vouloir récupérer les contraintes ?', $this->alertText());
311 // On clique sur "Annuler" dans la boite de dialogue qui apparaît
312 $this->dismissAlert();sleep(1);
313 // On vérifie que le message et les données n'ont pas été modifiés
314 $this->assertEquals("Action non effectuée.", $this->byId("recup_contrainte")->text());
315 $this->assertEquals("", $this->byId("servitude")->text());
316 // On clique sur le bouton "Récupérer les contraintes"
317 $this->byId("recup_contrainte-button")->click();
318 // On clique sur "OK" dans la boite de dialogue qui apparaît
319 $this->acceptAlert();sleep(1);
320 // On vérifie les nouvelles données après le traitement
321 $this->assertContains("Les contraintes ont été récupérées.", $this->byId("recup_contrainte")->text());
322 // On vérifie le message du champ contrainte
323 $this->assertContains("Aucune contraintes ajoutées depuis l'application", $this->byCssSelector("#sousform-sig_elyx #contrainte")->text());
324 $this->assertContains("1 contrainte(s) ajoutée(s) depuis le SIG", $this->byCssSelector("#sousform-sig_elyx #contrainte")->text());
325 // On clique sur le bouton retour
326 $this->byId("retour-button")->click();
327 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
328 $this->verifyNoErrors();
329 // On se déconnecte
330 $this->logout();
331 }
332
333 /**
334 * Test les l'ajout, modification et suppression d'une contrainte
335 * sur un dossier
336 */
337 public function test_06_dossier_contrainte() {
338
339 // On se connecte en tant que "instr"
340 $this->login("instr", "instr");
341 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
342 $this->verifyNoErrors();
343 // On clique sur le lien "Mes encours" dans le menu
344 $this->byLinkText("Mes Encours")->click();
345 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
346 $this->verifyNoErrors();
347 // On clique sur le lien "AZ0130551200001P0" dans le tableau
348 $this->byLinkText("DP 013055 12 00001P0")->click();
349 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
350 $this->verifyNoErrors();
351 // On clique sur "Contrainte(s)"
352 $this->byId("dossier_contrainte")->click();
353 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
354 $this->verifyNoErrors();
355 // On clique sur "Ajouter des contraintes"
356 $this->byId("action-soustab-dossier_contrainte-corner-ajouter")->click();
357 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
358 $this->verifyNoErrors();
359 // On déploie le groupe "Contraintes Openads"
360 $this->byCssSelector("#fieldset-sousform-dossier_contrainte-contraintes-openads legend")->click();
361 sleep(1);
362 // On déploie le sous-groupe "Environnement"
363 $this->byCssSelector("#fieldset-sousform-dossier_contrainte-environnement legend")->click();
364 sleep(1);
365 // On clique sur la checkbox de la contrainte
366 $this->byId("contrainte_5")->click();
367 // On applique les changements
368 $this->byCssSelector("input[value='Appliquer les changements']")->click();sleep(1);
369 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
370 $this->verifyNoErrors();
371 // On vérifie le message de validation
372 $this->assertContains("La contrainte Pollution puits a été ajoutée au dossier.", $this->byCssSelector(".message")->text());
373 // On clique sur le bouton "Retour"
374 $this->byLinkText("Retour")->click();sleep(1);
375 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
376 $this->verifyNoErrors();
377 // Vérifie que la contrainte est présente
378 $this->assertContains("Le puits d'une profondeur de [...] est pollué.", $this->byId("sousform-dossier_contrainte")->text());
379 // On clique sur le résultat
380 $this->byLinkText("Pollution puits")->click();
381 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
382 $this->verifyNoErrors();
383 // On clique pour modifier la contrainte
384 $this->byId("action-sousform-dossier_contrainte-modifier")->click();sleep(1);
385 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
386 $this->verifyNoErrors();
387 // On modifie le texte complété
388 $this->byId("texte_complete")->clear();
389 $this->byId("texte_complete")->value("Texte complété de la contrainte sur le dossier.");
390 // On valide le formulaire
391 $this->byXPath("//input[@value='Modifier']")->click();
392 // On vérifie le message de validation
393 $this->assertContains("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message")->text());
394 // On clique sur le bouton retour
395 $this->byLinkText("Retour")->click();sleep(1);
396 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
397 $this->verifyNoErrors();
398 // On clique sur le résultat
399 $this->byLinkText("Pollution puits")->click();
400 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
401 $this->verifyNoErrors();
402 // On supprime la contrainte
403 $this->byId("action-sousform-dossier_contrainte-supprimer")->click();
404 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
405 $this->verifyNoErrors();
406 // On valide le formulaire
407 $this->byXPath("//input[@value='Supprimer']")->click();
408 // On vérifie le message de validation
409 $this->assertContains("La suppression a été correctement effectuée.", $this->byCssSelector(".message")->text());
410 // On clique sur le bouton retour
411 $this->byLinkText("Retour")->click();
412 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
413 $this->verifyNoErrors();
414 // On se déconnecte
415 $this->logout();
416 }
417
418 /**
419 * Test le bouton permettant de lancer tous les traitements
420 * XXX lorsque la ressource de test le permettra, tester en cas d'erreur
421 * d'un traitements
422 */
423 public function test_07_all_geolocalisation_treatments() {
424
425 // On se connecte en tant que "instr"
426 $this->login("instr", "instr");
427 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
428 $this->verifyNoErrors();
429 // On clique sur le lien "Mes encours" dans le menu
430 $this->byLinkText("Mes Encours")->click();
431 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
432 $this->verifyNoErrors();
433 // On clique sur le lien "AZ0130551200001P0" dans le tableau
434 $this->byLinkText("DP 013055 12 00001P0")->click();
435 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
436 $this->verifyNoErrors();
437 // On clique sur "Géolocalisation"
438 $this->byLinkText("Géolocalisation")->click();
439 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
440 $this->verifyNoErrors();
441 // On vérifie les messages des traitements "Vérifier les parcelles",
442 // "Calculer l'emprise", "Dessiner l'emprise", "Calculer le centroïde"
443 // et "Récupérer les contraintes"
444 $this->assertEquals("Action non effectuée.", $this->byId("verif_parcelle")->text());
445 $this->assertEquals("Action non effectuée.", $this->byId("calcul_emprise")->text());
446 $this->assertEquals("Action non effectuée.", $this->byId("dessin_emprise")->text());
447 $this->assertEquals("Action non effectuée.", $this->byId("calcul_centroide")->text());
448 $this->assertEquals("Action non effectuée.", $this->byId("recup_contrainte")->text());
449 // On vérifie les données du dossier
450 // XXX Modifier les données de test pour ajouter des références
451 // cadastrales et l'adresse
452 // On clique sur le bouton "J'ai de la chance"
453 $this->byId("chance-button")->click();
454 // On vérifie le message affiché
455 $this->assertEquals('Êtes vous sur de vouloir récupérer les contraintes ?', $this->alertText());
456 // On clique sur "OK" dans la boite de dialogue qui apparaît
457 $this->acceptAlert();sleep(5);
458 // On vérifie tous les messages
459 $this->assertRegExp("/^[\s\S]*Les parcelles existent.[\s\S]*$/", $this->byId("verif_parcelle")->text());
460 $this->assertRegExp("/^[\s\S]*L'emprise a été calculé.[\s\S]*$/", $this->byId("calcul_emprise")->text());
461 $this->assertEquals("Action non effectuée.", $this->byId("dessin_emprise")->text());
462 $this->assertRegExp("/^[\s\S]*Le centroide a été calculé[\s\S]*$/", $this->byId("calcul_centroide")->text());
463 $this->assertRegExp("/^[\s\S]*Les contraintes ont été récupérées.[\s\S]*$/", $this->byId("recup_contrainte")->text());
464 // On vérifie toutes les données
465 $this->assertEquals("Localiser POINT(122 223)", $this->byCssSelector("#sousform-sig_elyx #centroide")->text());
466 $this->assertContains("Aucune contraintes ajoutées depuis l'application", $this->byCssSelector("#sousform-sig_elyx #contrainte")->text());
467 $this->assertContains("1 contrainte(s) ajoutée(s) depuis le SIG", $this->byCssSelector("#sousform-sig_elyx #contrainte")->text());
468 // On clique sur le bouton retour
469 $this->byId("retour-button")->click();
470 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
471 $this->verifyNoErrors();
472 // On se déconnecte
473 $this->logout();
474 }
475
476 /**
477 * Test la sélection de dossiers dans le SIG vers openADS
478 */
479 public function test_08_selection_dossiers_sig() {
480 // On se connecte en tant que "instr"
481 $this->login("instr", "instr");
482 // On passe une liste de dossiers à l'url de redirection
483 $this->url("http://localhost/openads/app/affiche_selection_tab.php?dossiers=AT0130551200001P0;CU0130551200001P0");
484 // On vérifie qu'il n'y a pas d'erreur
485 $this->verifyNoErrors();
486 // vérification de l'affichage des dossiers dans le tableau
487 $this->assertEquals("Instruction > Dossiers D'instruction", $this->byCssSelector("#title h2")->text());
488 $this->assertContains("AT 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
489 $this->assertContains("CU 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
490 // On ne passe pas de dossiers à l'url de redirection
491 $this->url("http://localhost/openads/app/affiche_selection_tab.php");
492 // On vérifie qu'il n'y a pas d'erreur
493 $this->verifyNoErrors();
494 // vérification de l'affichage des dossiers dans le tableau
495 $this->assertEquals("Instruction > Dossiers D'instruction", $this->byCssSelector("#title h2")->text());
496 $this->assertContains("AT 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
497 $this->assertContains("AZ 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
498 $this->assertContains("CU 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
499 $this->assertContains("DP 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
500 $this->assertContains("PA 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
501 $this->assertContains("PC 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
502 $this->assertContains("PC 013055 12 00002P0",$this->byCssSelector(".tab-tab")->text());
503 $this->assertContains("PD 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
504
505 // On passe un dossiers au à l'url de redirection
506 $this->url("http://localhost/openads/app/affiche_selection_tab.php?dossiers=AT0130551200001P0");
507 // On vérifie qu'il n'y a pas d'erreur
508 $this->verifyNoErrors();
509 // vérification de l'affichage des dossiers dans le tableau
510 $this->assertEquals("Instruction > Dossiers D'instruction", $this->byCssSelector("#title h2")->text());
511 $this->assertContains("AT 013055 12 00001P0",$this->byCssSelector(".tab-tab")->text());
512
513 // On se déconnecte
514 $this->logout();
515 }
516
517 /**
518 * Active l'option sig avec la valeur nécessaire pour la suite des tests
519 */
520 public function test_09_desactive_option_sig() {
521
522 // On se connecte en tant que "admin"
523 $this->login("admin", "admin");
524 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
525 $this->verifyNoErrors();
526 // On clique sur le lien "Administration" dans le menu
527 $this->byLinkText("Administration")->click();
528 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
529 $this->verifyNoErrors();
530 // // On clique sur le lien "Paramètre" dans le menu
531 $this->byLinkText("Paramètre")->click();
532 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
533 $this->verifyNoErrors();
534 // On remplis le champs de recherche simple
535 $this->byCssSelector("input[name='recherche']")->value('option_sig');
536 // On clique sur le bouton recherche
537 $this->byCssSelector(".ui-button")->click();
538 // On clique sur le résultat
539 $this->byLinkText("option_sig")->click();
540 // On clique sur le bouton "Modifier"
541 $this->byId('action-form-om_parametre-modifier')->click();
542 // On change la valeur par "aucun"
543 $this->byId('valeur')->clear();
544 $this->byId('valeur')->value('aucun');
545 // On valide la modification
546 $this->byCssSelector("input[value='Modifier']")->click();
547 // On vérifie le message de validation
548 $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#tabs-1 .message")->text());
549 // On clique sur le bouton 'Retour'
550 $this->byLinkText("Retour")->click();
551 // On vérifie les nouvelles données
552 $this->assertEquals("aucun", $this->byId("valeur")->text());
553 // On se déconnecte
554 $this->logout();
555 }
556
557 }
558 ?>

Properties

Name Value
svn:executable *
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26