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

Annotation of /trunk/tests/testParametrageDossiers.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2723 - (hide annotations)
Thu Feb 13 10:45:18 2014 UTC (10 years, 11 months ago) by softime
File size: 29858 byte(s)
Modification des tests pour la gestion des contraintes POS et PLU

1 softime 1992 <?php
2     /**
3     *
4     *
5 softime 2442 * @package openfoncier
6     * @version SVN : $Id$
7 softime 1992 */
8    
9     //
10     require_once "base.php";
11    
12     /**
13     * Test les paramétrage de dossiers
14     */
15     class testParametrageDossiers extends Base2TestCase {
16    
17     /**
18     * Test le formulaire de la demande de type qui possède des select filtrés
19     */
20     public function testDemandeType() {
21    
22     // On se connecte à l'application
23     $this->login("admin", "admin");
24 softime 2308 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
25     $this->verifyNoErrors();
26 softime 1992 // On clique sur le menu
27     $this->byLinkText("Paramétrage Dossiers")->click();
28 softime 2308 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
29     $this->verifyNoErrors();
30 softime 1992 // On clique sur le sous-menu
31     $this->byLinkText("Type")->click();
32 softime 2308 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
33     $this->verifyNoErrors();
34 softime 1992 // On clique sur le bouton "Ajouter"
35     $this->byLinkText("Ajouter")->click();
36 softime 2308 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
37     $this->verifyNoErrors();
38 softime 1992 // On remplis le champ code
39     $this->byId("code")->value("TEST");
40     // On remplit le choix libelle
41     $this->byId("libelle")->value("Test ajout de type de demande");
42     // On selectionne le groupe "Autorisation ADS"
43     $this->select($this->byId("groupe"))->selectOptionByValue("1");
44 vpihour 2456 // On vérifie que le filtre s'est appliqué sur le champ
45 softime 1992 // "type de dossier d'autorisation détaillé "
46     $this->assertTrue((bool)preg_match_all("/(PCI)|(PCA)|(PD)|(PA)|(DP)|(CU)|(AZ)/", $this->select($this->byId("dossier_autorisation_type_detaille"))->text(), $matches));
47     // On selectionne le type détaillé d'autorisation
48     // "AZ (Demande d'autorisation spéciale de travaux dans le périmètre d'une AVAP)"
49     $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByValue("7");
50     // On vérifie que le filtre s'est appliqué sur le champ
51     // "type de dossier d'instruction à créer"
52     $this->assertTrue((bool)preg_match_all("/(AZ - Initial)|(AZ - Transfert)|(AZ - Modificatif)|(AZ - Achèvement et conformité)|(AZ - Ouverture de chantier)/", $this->select($this->byId("dossier_instruction_type"))->text(), $matches));
53     // On selectionne le type de dossier d'instruction "AZ - Initial"
54     $this->select($this->byId("dossier_instruction_type"))->selectOptionByValue("31");
55     // On selectionne le type de l'événement d'instruction à créer
56     $this->select($this->byId("evenement"))->selectOptionByValue("1");
57 softime 2358 // On selectionne la natude de la demande
58     $this->select($this->byId("demande_nature"))->selectOptionByValue("1");
59 softime 1992 // On clique sur "Ajouter"
60     $this->byXPath("//input[@value='Ajouter']")->click();
61 softime 2308 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
62     $this->verifyNoErrors();
63 softime 1992 // On vérifie le message
64     $this->assertEquals("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message .text")->text());
65     // On clique sur le bouton "Retour"
66     $this->byLinkText("Retour")->click();
67 softime 2308 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
68     $this->verifyNoErrors();
69 softime 1992 // On clique sur le type de demande crée
70     $this->byLinkText("TEST")->click();
71 softime 2308 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
72     $this->verifyNoErrors();
73 softime 1992 // On vérifie le champ code
74     $this->assertEquals("TEST", $this->byId("code")->text());
75     // On vérifie le champ libelle
76     $this->assertEquals("Test ajout de type de demande", $this->byId("libelle")->text());
77     // On vérifie le champ groupe
78     $this->assertEquals("Autorisation ADS", $this->byId("groupe")->text());
79     // On vérifie le champ type de dossier d'autorisation détaillé
80     $this->assertEquals("AZ (Demande d'autorisation spéciale de travaux dans le périmètre d'une AVAP)", $this->byId("dossier_autorisation_type_detaille")->text());
81     // On vérifie le champ type de dossier d'instruction à créer
82     $this->assertEquals("AZ - Initial", $this->byId("dossier_instruction_type")->text());
83     // On clique sur le portlet "Modifier"
84     $this->byXPath("//div[@id='portlet-actions']/ul/li/a/span")->click();
85 softime 2308 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
86     $this->verifyNoErrors();
87 softime 1992 // On vérifie que les champs type de dossier d'autorisation
88     // détaillé et type de dossier d'instruction à créer respectent le filtrage
89     $this->assertTrue((bool)preg_match_all("/(PCI)|(PCA)|(PD)|(PA)|(DP)|(CU)|(AZ)/", $this->select($this->byId("dossier_autorisation_type_detaille"))->text()));
90     $this->assertTrue((bool)preg_match_all("/(AZ - Initial)|(AZ - Transfert)|(AZ - Modificatif)|(AZ - Achèvement et conformité)|(AZ - Ouverture de chantier)/", $this->select($this->byId("dossier_instruction_type"))->text()));
91     // On modifie le type de dossier d'autorisation détaillé
92     $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByValue("1");
93     // On vérifie que le filtre s'est appliqué sur le champ
94     // "type de dossier d'instruction à créer"
95     $this->assertTrue((bool)preg_match_all("/(PCI - Initial)|(PCI - Transfert)|(PCI - Modificatif)|(PCI - Achèvement et conformité)|(PCI - Ouverture de chantier)/", $this->select($this->byId("dossier_instruction_type"))->text()));
96     // On modifie le type de dossier d'instruction à créer
97     $this->select($this->byId("dossier_instruction_type"))->selectOptionByValue("1");
98     // On clique sur modifier
99     $this->byXPath("//input[@value='Modifier']")->click();
100 softime 2308 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
101     $this->verifyNoErrors();
102 softime 1992 // On vérifie le message
103     $this->assertEquals("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message .text")->text());
104     // On se déconnecte de l'application
105     $this->logout();
106    
107     }
108 softime 2308
109     /**
110 vpihour 2326 * Test l'existence des champs saisis dans la règle d'une action
111 softime 2308 */
112     public function test_action() {
113    
114     // On se connecte à l'application
115     $this->login("admin", "admin");
116     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
117     $this->verifyNoErrors();
118     // On clique sur le menu
119     $this->byLinkText("Paramétrage Dossiers")->click();
120     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
121     $this->verifyNoErrors();
122     // On clique sur le sous-menu
123     $this->byLinkText("Action")->click();
124     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
125     $this->verifyNoErrors();
126 vpihour 2326 // On remplit le champ de recherche simple
127 softime 2308 $this->byCssSelector("input[name='recherche']")->value('acceptation');
128     // On clique sur le bouton recherche
129     $this->byCssSelector(".ui-button")->click();
130     // On clique sur le résultat
131     $this->byLinkText("acceptation")->click();
132     // On clique sur le bouton "Modifier"
133     $this->byId('action-form-action-modifier')->click();
134 vpihour 2326 // On change la valeur par "etat + champ_errone"
135 softime 2308 $this->byId('regle_etat')->clear();
136     $this->byId('regle_etat')->value('etat + champ_errone');
137     // On valide la modification
138     $this->byCssSelector("input[value='Modifier']")->click();
139     // On vérifie le message de validation
140 softime 2437 $this->assertRegExp("/^[\s\S]*Le champ champ_errone n'est pas utilisable pour le champ règle etat[\s\S]*$/", $this->byCssSelector("#tabs-1 .message")->text());
141 softime 2308 // On change la règle état
142 nhaye 2441 $this->byId('regle_date_dernier_depot')->clear();
143     $this->byId('regle_date_dernier_depot')->value('NULL');
144     // On valide la modification
145     $this->byCssSelector("input[value='Modifier']")->click();
146     // On vérifie le message de validation
147 softime 2442 $this->assertRegExp("/^[\s\S]*Le champ date de dernier dépôt des dossiers ne peut être mis à NULL.[\s\S]*$/", $this->byCssSelector("#tabs-1 .message")->text());
148 nhaye 2441 // On change la règle état
149 softime 2442 $this->byId('regle_date_dernier_depot')->clear();
150     // On change la règle état
151 softime 2308 $this->byId('regle_etat')->clear();
152     $this->byId('regle_etat')->value('etat');
153     // On valide la modification
154     $this->byCssSelector("input[value='Modifier']")->click();
155     // On vérifie le message de validation
156     $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/", $this->byCssSelector("#tabs-1 .message")->text());
157     // On clique sur le bouton 'Retour'
158     $this->byLinkText("Retour")->click();
159     // On vérifie les nouvelles données
160     $this->assertEquals("etat", $this->byId("regle_etat")->text());
161     // On se déconnecte
162     $this->logout();
163     }
164 softime 2453
165     /**
166     * Test le paramétrage entre les événements avant AR et les événements AR
167     */
168 vpihour 2456 public function test_03_evenement_retour() {
169 softime 2453
170 vpihour 2456 // On se connecte à l'application
171     $this->login("admin", "admin");
172     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
173     $this->verifyNoErrors();
174     // On clique sur le menu "Paramétrage Dossiers"
175     $this->byLinkText("Paramétrage Dossiers")->click();
176     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
177     $this->verifyNoErrors();
178     // On clique sur le sous-menu "Événement"
179     $this->byLinkText("Événement")->click();
180     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
181     $this->verifyNoErrors();
182     // On ajoute un événement "principal" (c-a-d qui n'est pas retour)
183     // On clique sur le bouton ajouter
184     $this->byId("action-tab-evenement-corner-ajouter")->click();
185     // On remplit les champs
186     $this->byId("libelle")->value("test_princ");
187     $this->byId("restriction")->value("date_evenement <= archive_date_dernier_depot + 1");
188     $this->select($this->byId("action"))->selectOptionByLabel("initier un delai");
189     $this->select($this->byId("delai"))->selectOptionByLabel("5 Mois");
190     $this->select($this->byId("accord_tacite"))->selectOptionByLabel("Oui");
191     $this->select($this->byId("delai_notification"))->selectOptionByLabel("1 Mois");
192     $this->select($this->byId("avis_decision"))->selectOptionByLabel("Non concerné");
193     // On valide le formulaire
194     $this->byXPath("//input[@value='Ajouter']")->click();
195     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
196     $this->verifyNoErrors();
197     // On vérifie le message de validation
198     $this->assertContains("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message")->text());
199     // On clique sur le bouton retour
200     $this->byLinkText("Retour")->click();
201     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
202     $this->verifyNoErrors();
203 softime 2599 // On ajoute un événement "suivant tacite"
204     // On clique sur le bouton ajouter
205     $this->byId("action-tab-evenement-corner-ajouter")->click();
206     // On remplit les champs
207     $this->byId("libelle")->value("test_suivant_tacite");
208     // On valide le formulaire
209     $this->byXPath("//input[@value='Ajouter']")->click();
210     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
211     $this->verifyNoErrors();
212     // On vérifie le message de validation
213     $this->assertContains("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message")->text());
214     // On clique sur le bouton retour
215     $this->byLinkText("Retour")->click();
216     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
217     $this->verifyNoErrors();
218 vpihour 2456 // On ajoute un événement "retour"
219     // On clique sur le bouton ajouter
220     $this->byId("action-tab-evenement-corner-ajouter")->click();
221     // On remplit les champs
222     $this->byId("libelle")->value("test_retour");
223     $this->byId("retour")->click();
224     $this->select($this->byName("etats_depuis_lequel_l_evenement_est_disponible[]"))->clearSelectedOptions();;
225     $this->select($this->byName("etats_depuis_lequel_l_evenement_est_disponible[]"))->selectOptionByLabel("delai de notification envoye");
226     $this->select($this->byName("dossier_instruction_type[]"))->clearSelectedOptions();
227     $this->select($this->byName("dossier_instruction_type[]"))->selectOptionByLabel("PCI - P - Initial");
228     $this->select($this->byId("etat"))->selectOptionByLabel("delai majore");
229 softime 2599 $this->select($this->byId("evenement_suivant_tacite"))->selectOptionByLabel("test_suivant_tacite");
230 vpihour 2456 // On valide le formulaire
231     $this->byXPath("//input[@value='Ajouter']")->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 le message de validation
235     $this->assertContains("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message")->text());
236     // On clique sur le bouton retour
237     $this->byLinkText("Retour")->click();
238     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
239     $this->verifyNoErrors();
240     // On recherche l'événement "test_princ"
241     $this->byCssSelector("input[name='recherche']")->value('test_princ');
242     // On clique sur le bouton recherche
243     $this->byCssSelector(".ui-button")->click();
244     // On clique sur le résultat
245     $this->byLinkText("test_princ")->click();
246     // On clique sur le bouton "Modifier"
247     $this->byId('action-form-evenement-modifier')->click();
248     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
249     $this->verifyNoErrors();
250     // On sélectionne l'événement "retour" dans "evenement_retour_ar"
251     $this->select($this->byId("evenement_retour_ar"))->selectOptionByLabel("test_retour");
252     // On sélectionne l'événement "retour" dans "evenement_retour_signature"
253     $this->select($this->byId("evenement_retour_signature"))->selectOptionByLabel("test_retour");
254     // On valide le formulaire
255     $this->byXPath("//input[@value='Modifier']")->click();
256     // On vérifie le message d'erreur
257     $this->assertContains("L'événement \"test_retour\" ne peut pas être utilisé en tant qu'événement d'accusé de réception et événement de retour de signature.", $this->byCssSelector(".message")->text());
258     // On ne sélectionne aucun "evenement_retour_signature"
259     $this->select($this->byId("evenement_retour_signature"))->selectOptionByValue("");
260     // On valide le formulaire
261     $this->byXPath("//input[@value='Modifier']")->click();
262     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
263     $this->verifyNoErrors();
264     // On vérifie le message de validation
265     $this->assertContains("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message")->text());
266     // On clique sur le bouton retour
267     $this->byLinkText("Retour")->click();
268     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
269     $this->verifyNoErrors();
270     // On clique sur le bouton retour
271     $this->byLinkText("Retour")->click();
272     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
273     $this->verifyNoErrors();
274     // On recherche l'événement "test_retour"
275     $this->byCssSelector("input[name='recherche']")->clear();
276     $this->byCssSelector("input[name='recherche']")->value('test_retour');
277     // On clique sur le bouton recherche
278     $this->byCssSelector(".ui-button")->click();
279     // On clique sur le résultat
280     $this->byLinkText("test_retour")->click();
281     // On vérifie que les paramètres ont été copiés
282     $this->assertEquals("date_evenement <= archive_date_dernier_depot + 1", $this->byId("restriction")->text());
283     $this->assertEquals("5", $this->byId("delai")->text());
284     $this->assertEquals("Oui", $this->byId("accord_tacite")->text());
285     $this->assertEquals("1", $this->byId("delai_notification")->text());
286     $this->assertEquals("Non concerné", $this->byId("avis_decision")->text());
287     // On clique sur le bouton retour
288     $this->byLinkText("Retour")->click();
289     // On ajoute un événement "principal" (c-a-d qui n'est pas retour)
290     // On clique sur le bouton ajouter
291     $this->byId("action-tab-evenement-corner-ajouter")->click();
292     // On remplit le libellé
293     $this->byId("libelle")->value("test_princ_2");
294     // On sélectionne l'événement "retour" dans "evenement_retour_ar"
295     $this->select($this->byId("evenement_retour_signature"))->selectOptionByLabel("test_retour");
296     // On valide le formulaire
297     $this->byXPath("//input[@value='Ajouter']")->click();
298     // On vérifie le message d'erreur
299     $this->assertContains("L'événement \"test_retour\" est déjà utilisé en tant qu'événement d'accusé de réception.", $this->byCssSelector(".message")->text());
300     // On vérifie dans l'interface workflow
301     // On clique sur le sous-menu "Workflows"
302     $this->byLinkText("Workflows")->click();
303     // On sélectionne le type de DI
304     $this->select($this->byId("di_type"))->selectOptionByLabel("PCI - P - Initial");
305     // On vérifie que l'évenement retour apparaît
306     $this->assertContains("TEST_RETOUR [RETOUR]", $this->byId("tabs-1")->text());
307     // On se déconnecte
308     $this->logout();
309     }
310 softime 2690
311     /**
312     * Test la copie d'événement
313     * Cette fonction a besoin de la fonction test_03_evenement_retour
314     * pour fonctionner
315     */
316     public function test_04_evenement_copie() {
317    
318     // On se connecte à l'application
319     $this->login("admin", "admin");
320     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
321     $this->verifyNoErrors();
322     // On clique sur le menu "Paramétrage Dossiers"
323     $this->byLinkText("Paramétrage Dossiers")->click();
324     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
325     $this->verifyNoErrors();
326     // On clique sur le sous-menu "Événement"
327     $this->byLinkText("Événement")->click();
328     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
329     $this->verifyNoErrors();
330     // On recherche l'événement "test_princ"
331     $this->byCssSelector("input[name='recherche']")->value('test_princ');
332     // On clique sur le bouton recherche
333     $this->byCssSelector(".ui-button")->click();
334     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
335     $this->verifyNoErrors();
336     // On clique sur le résultat
337     $this->byLinkText("test_princ")->click();
338     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
339     $this->verifyNoErrors();
340     // On ajout un enregistrement à bible pour tester la copie après
341     // On clique sur l'onglet "bible"
342     $this->byId("bible")->click();
343     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
344     $this->verifyNoErrors();
345     // On clique sur le bouton ajouter
346     $this->byId("action-soustab-bible-corner-ajouter")->click();
347     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
348     $this->verifyNoErrors();
349     // On remplis les champs obligatoire
350     $this->byId("contenu")->value("test bible assoc evenement");
351     $this->byXPath('//*[@name="libelle"]')->value("test bible assoc evenement");
352     // On clique sur le bouton "Ajouter"
353     $this->byXPath("//input[@value='Ajouter']")->click();sleep(1);
354     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
355     $this->verifyNoErrors();
356     // On vérifie le message de validation
357     $this->assertContains("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message")->text());
358     // On clique sur le bouton retour
359     $this->byLinkText("Retour")->click();
360     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
361     $this->verifyNoErrors();
362     // On clique sur l'onglet "Événement"
363     $this->byId("main")->click();
364     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
365     $this->verifyNoErrors();
366     // On récupère l'identifiant de l'événement
367     $evenement = $this->byId('evenement')->text();
368     // On clique sur le bouton retour
369     $this->byLinkText("Retour")->click();
370     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
371     $this->verifyNoErrors();
372     // On clique sur l'action "copier"
373     $this->byId('action-tab-evenement-left-copier-'.$evenement)->click();
374     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
375     $this->verifyNoErrors();
376     // On sélectionne seulement l'objet associé "bible"
377     $this->byId("bible")->click();
378     // On clique sur le bouton "Copier"
379     $this->byId('button-Copier')->click();
380     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
381     $this->verifyNoErrors();
382     // On vérifie le message de validation
383     $this->assertContains("La copie de l'enregistrement événement avec l'identifiant ".$evenement." s'est effectuée avec succès", $this->byCssSelector(".message")->text());
384     // On clique sur le bouton retour
385     $this->byLinkText("Retour")->click();
386     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
387     $this->verifyNoErrors();
388     // On vérifie que le champ de recherche n'est pas vide
389     $this->assertTrue($this->byCssSelector("input[name='recherche']")->value() != "");
390    
391     }
392 softime 2723
393     /**
394     * Active l'option sig avec la valeur nécessaire pour la suite des tests
395     */
396     public function test_05_active_option_sig() {
397    
398     // On se connecte en tant que "admin"
399     $this->login("admin", "admin");
400     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
401     $this->verifyNoErrors();
402     // On clique sur le lien "Administration" dans le menu
403     $this->byLinkText("Administration")->click();
404     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
405     $this->verifyNoErrors();
406     // // On clique sur le lien "Paramètre" dans le menu
407     $this->byLinkText("Paramètre")->click();
408     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
409     $this->verifyNoErrors();
410     // On remplis le champs de recherche simple
411     $this->byCssSelector("input[name='recherche']")->value('option_sig');
412     // On clique sur le bouton recherche
413     $this->byCssSelector(".ui-button")->click();
414     // On clique sur le résultat
415     $this->byLinkText("option_sig")->click();
416     // On clique sur le bouton "Modifier"
417     $this->byId('action-form-om_parametre-modifier')->click();
418     // On change la valeur par "sig_externe"
419     $this->byId('valeur')->clear();
420     $this->byId('valeur')->value('sig_externe');
421     // On valide la modification
422     $this->byCssSelector("input[value='Modifier']")->click();
423     // On vérifie le message de validation
424     $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#tabs-1 .message")->text());
425     // On clique sur le bouton 'Retour'
426     $this->byLinkText("Retour")->click();
427     // On vérifie les nouvelles données
428     $this->assertEquals("sig_externe", $this->byId("valeur")->text());
429     // On se déconnecte
430     $this->logout();
431     }
432    
433     /**
434     * Test l'ajout, la modification et la suppression d'un contrainte
435     */
436     public function test_06_contrainte() {
437    
438     // On se connecte à l'application
439     $this->login("admin", "admin");
440     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
441     $this->verifyNoErrors();
442     // On clique sur le menu "Paramétrage Dossiers"
443     $this->byLinkText("Paramétrage Dossiers")->click();
444     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
445     $this->verifyNoErrors();
446     // On clique sur le sous-menu "Événement"
447     $this->byLinkText("Contrainte")->click();
448     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
449     $this->verifyNoErrors();
450     // On ajoute une contrainte
451     $this->byId("action-tab-contrainte-corner-ajouter")->click();
452     // On remplis les champs
453     $this->byId("libelle")->value("Une contrainte manuelle");
454     $this->byId("groupe")->value("Zone du PLU");
455     $this->byId("sousgroupe")->value("protection");
456     $this->byId("texte")->value("Texte de la contrainte à complété.");
457     // On valide le formulaire
458     $this->byXPath("//input[@value='Ajouter']")->click();
459     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
460     $this->verifyNoErrors();
461     // On vérifie le message de validation
462     $this->assertContains("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message")->text());
463     // On clique sur le bouton retour
464     $this->byLinkText("Retour")->click();
465     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
466     $this->verifyNoErrors();
467     // On vérifie que la contrainte existe
468     $this->assertContains("Une contrainte manuelle", $this->byCssSelector(".tab-tab")->text());
469     // On clique sur la contrainte créée
470     $this->byLinkText("Une contrainte manuelle")->click();
471     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
472     $this->verifyNoErrors();
473     // On clique sur le bouton "Modifier"
474     $this->byId("action-form-contrainte-modifier")->click();
475     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
476     $this->verifyNoErrors();
477     // On modifie le texte
478     $this->byId("texte")->clear();
479     $this->byId("texte")->value("Texte de la contrainte à complété depuis un dossier.");
480     // On valide le formulaire
481     $this->byXPath("//input[@value='Modifier']")->click();
482     // On vérifie le message de validation
483     $this->assertContains("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message")->text());
484     // On clique sur le bouton retour
485     $this->byLinkText("Retour")->click();
486     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
487     $this->verifyNoErrors();
488     // On vérifie le texte de la contrainte
489     $this->assertContains("Texte de la contrainte à complété depuis un dossier.", $this->byId("texte")->text());
490     // On clique sur le bouton supprimer
491     $this->byId("action-form-contrainte-supprimer")->click();
492     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
493     $this->verifyNoErrors();
494     // On valide le formulaire
495     $this->byXPath("//input[@value='Supprimer']")->click();
496     // On vérifie le message de validation
497     $this->assertContains("La suppression a été correctement effectuée.", $this->byCssSelector(".message")->text());
498     // On clique sur le bouton retour
499     $this->byLinkText("Retour")->click();
500     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
501     $this->verifyNoErrors();
502     // On se déconnecte
503     $this->logout();
504     }
505    
506     /**
507     * Active l'option sig avec la valeur nécessaire pour la suite des tests
508     */
509     public function test_07_desactive_option_sig() {
510    
511     // On se connecte en tant que "admin"
512     $this->login("admin", "admin");
513     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
514     $this->verifyNoErrors();
515     // On clique sur le lien "Administration" dans le menu
516     $this->byLinkText("Administration")->click();
517     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
518     $this->verifyNoErrors();
519     // // On clique sur le lien "Paramètre" dans le menu
520     $this->byLinkText("Paramètre")->click();
521     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
522     $this->verifyNoErrors();
523     // On remplis le champs de recherche simple
524     $this->byCssSelector("input[name='recherche']")->value('option_sig');
525     // On clique sur le bouton recherche
526     $this->byCssSelector(".ui-button")->click();
527     // On clique sur le résultat
528     $this->byLinkText("option_sig")->click();
529     // On clique sur le bouton "Modifier"
530     $this->byId('action-form-om_parametre-modifier')->click();
531     // On change la valeur par "aucun"
532     $this->byId('valeur')->clear();
533     $this->byId('valeur')->value('aucun');
534     // On valide la modification
535     $this->byCssSelector("input[value='Modifier']")->click();
536     // On vérifie le message de validation
537     $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#tabs-1 .message")->text());
538     // On clique sur le bouton 'Retour'
539     $this->byLinkText("Retour")->click();
540     // On vérifie les nouvelles données
541     $this->assertEquals("aucun", $this->byId("valeur")->text());
542     // On se déconnecte
543     $this->logout();
544     }
545 softime 1992 }
546    
547     ?>

Properties

Name Value
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26