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

Contents of /trunk/tests/testGuichetUnique.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1996 - (show annotations)
Fri Jun 7 14:35:59 2013 UTC (11 years, 8 months ago) by vpihour
File size: 12187 byte(s)
Utilisation de la méthode assertRegExp au lieu de la méthode assertTrue avec la fonction preg_match

1 <?php
2 /**
3 *
4 *
5 * @package openfoncier
6 * @version SVN : $Id$
7 */
8
9 //
10 require_once "base.php";
11
12 /**
13 *
14 */
15 class GuichetUnique extends Base2TestCase {
16
17 /**
18 * Ce test doit être réalisé juste après la réinitialisation de la base
19 * de données.
20 */
21 public function testAffichageReglementaire() {
22
23 // On se connecte à l'application
24 $this->login("guichet", "guichet");
25 // On clique sur le menu "Attestation"
26 $this->byLinkText("Attestation")->click();
27 // On vérifie qu'il n'y ait pas d'erreur
28 $this->verifynoerrors();
29 // On vérifie le nom de l'onglet
30 $this->assertEquals("Imprimer L'attestation D'affichage Réglementaire", $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());
31 // On écrit "PC0130551200002P0" dans le champ dossier
32 $this->byId("dossier")->value("PC0130551200002P0");
33 // On clique sur "Valider"
34 $this->byXPath("//input[@value='Valider']")->click();
35 // On vérifie qu'il n'y ait pas d'erreur
36 $this->verifynoerrors();
37 // On vérifie que text est présent
38 $this->assertRegExp("/^[\s\S]*Ce dossier n'a jamais été affiché.[\s\S]*$/",$this->byCssSelector("BODY")->text());
39 // On clique sur le menu "Registre"
40 $this->byLinkText("Registre")->click();
41 // On vérifie qu'il n'y ait pas d'erreur
42 $this->verifynoerrors();
43 // On vérifie le nom de l'onglet
44 $this->assertEquals("Imprimer Le Registre D'affichage Réglementaire", $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());
45 // On clique sur "Valider"
46 $this->byXPath("//input[@value='Valider']")->click();
47 // On clique sur "Oui" dans la fenêtre js qui apparaît
48 $this->acceptAlert();sleep(5);
49 // Liste des fenêtres ouvertes
50 $windows = $this->windowHandles();
51 // On change le focus de la fenêtre
52 $this->window($windows[1]);
53 // On vérifie qu'il n'y ait pas d'erreur
54 $this->verifynoerrors();
55 // On vérifie que text est présent
56 $this->assertRegExp('/^[\s\S]*Registre des dossiers en cours[\s\S]*$/',$this->source());
57 // On ferme la fenêtre
58 $this->closeWindow();
59 // On change le focus de la fenêtre
60 $this->window($windows[0]);
61 // On vérifie qu'il n'y ait pas d'erreur
62 $this->verifynoerrors();
63 // On vérifie que text est présent
64 $this->assertRegExp('/^[\s\S]*Traitement terminé. Le registre a été téléchargé.[\s\S]*$/',$this->byCssSelector("BODY")->text());
65 // On clique sur le menu "Attestation"
66 $this->byLinkText("Attestation")->click();
67 // On vérifie qu'il n'y ait pas d'erreur
68 $this->verifynoerrors();
69 // On vérifie le nom de l'onglet
70 $this->assertEquals("Imprimer L'attestation D'affichage Réglementaire", $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());
71 // On clique sur "Valider"
72 $this->byXPath("//input[@value='Valider']")->click();
73 // On vérifie qu'il n'y ait pas d'erreur
74 $this->verifynoerrors();
75 // On vérifie que text est présent
76 $this->assertRegExp("/^[\s\S]*Veuiller saisir un N° de dossier.[\s\S]*$/",$this->byCssSelector("BODY")->text());
77 // On écrit "123" dans le champ dossier
78 $this->byId("dossier")->value("123");
79 // On clique sur "Valider"
80 $this->byXPath("//input[@value='Valider']")->click();
81 // On vérifie qu'il n'y ait pas d'erreur
82 $this->verifynoerrors();
83 // On vérifie que text est présent
84 $this->assertRegExp("/^[\s\S]*Ce dossier n'existe pas.[\s\S]*$/",$this->byCssSelector("BODY")->text());
85 // On écrit "PC0130551200002P0" dans le champ dossier
86 $this->byId("dossier")->value("PC0130551200002P0");
87 // On clique sur "Valider"
88 $this->byXPath("//input[@value='Valider']")->click();
89 // On vérifie qu'il n'y ait pas d'erreur
90 $this->verifynoerrors();
91 // On vérifie que le text est présent
92 $this->assertRegExp("/^[\s\S]*Cliquez sur le lien ci-dessous pour télécharger votre attestation d'affichage[\s\S]*$/",$this->byCssSelector("BODY")->text());
93 // On clique sur "Attestation d'affichage"
94 $this->byLinkText("Attestation d'affichage")->click();sleep(5);
95 // Liste les fenêtres
96 $windows = $this->windowHandles();
97 // Change la fenêtre
98 $this->window($windows[1]);
99 // On vérifie qu'il n'y ait pas d'erreur
100 $this->verifynoerrors();
101 // On vérifie que le text est présent
102 $this->assertRegExp("/^[\s\S]*ATTESTATION D'AFFICHAGE REGLEMENTAIRE[\s\S]*$/",$this->source());
103 // On ferme la fenêtre
104 $this->closeWindow();
105 // On change le focus de la fenêtre
106 $this->window($windows[0]);
107 // On se deconnecte
108 $this->logout();
109 }
110
111 /**
112 * Test le Récépissé
113 */
114 public function testRecepisse() {
115
116 // On se connecte à l'application
117 $this->login("guichet", "guichet");
118 // On clique sur le menu "Récépissé"
119 $this->byLinkText("Récépissé")->click();
120 // On vérifie qu'il n'y ait pas d'erreur
121 $this->verifynoerrors();
122 // On vérifie le nom de l'onglet
123 $this->assertEquals("Demande", $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());
124 // On clique sur "AT0130551200001P0"
125 $this->byLinkText("AT0130551200001P0")->click();
126 // On vérifie qu'il n'y ait pas d'erreur
127 $this->verifynoerrors();
128 // On vérifie que le text est présent
129 $this->assertRegExp("/^[\s\S]*Demande d'autorisation de construire, d'aménager ou de modifier un ERP[\s\S]*$/",$this->byCssSelector("BODY")->text());
130 // Le nom du pétitionnaire doit apparaître
131 $this->assertRegExp("/^[\s\S]*BERNARD LILIANE[\s\S]*$/",$this->byCssSelector("BODY")->text());
132 // On clique sur le lien
133 $this->byLinkText("Éditer le récépissé PDF")->click();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->assertRegExp("/^[\s\S]*RECEPISSE DE DEPOT[\s\S]*$/",$this->source());
142 // On ferme la fenêtre
143 $this->closeWindow();
144 // On change le focus de la fenêtre
145 $this->window($windows[0]);
146 // On clique sur "Retour"
147 $this->byLinkText("Retour")->click();
148 // On vérifie qu'il n'y ait pas d'erreur
149 $this->verifynoerrors();
150 // On vérifie le nom de l'onglet
151 $this->assertEquals("Demande", $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());
152 // On se deconnecte
153 $this->logout();
154 }
155
156 /**
157 * Test les pétitionnaires fréquents
158 */
159 public function testPetitionnaireFrequent() {
160
161 // On se connecte à l'application
162 $this->login("guichet", "guichet");
163 // On clique sur le menu "Nouveau Dossier"
164 $this->byLinkText("Nouveau Dossier")->click();
165 // On vérifie qu'il n'y ait pas d'erreur
166 $this->verifynoerrors();
167 // On vérifie le nom de l'onglet
168 $this->assertEquals("Demande", $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());
169 // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"
170 $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByLabel("Permis de construire pour une maison individuelle et / ou ses annexes");
171 // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"
172 $this->select($this->byId("demande_type"))->selectOptionByLabel("Dépôt Initial");
173 // On clique pour ajouter un pétitionnaire principale
174 $this->byId("add_petitionnaire_principal")->click();
175 // On remplit le champ
176 $this->byId("particulier_nom")->value("DURAND");
177 // On remplit le champ
178 $this->byId("particulier_prenom")->value("MICKAEL");
179 // On remplit le champ
180 $this->byId("particulier_date_naissance")->value("03/01/1956");
181 // On remplit le champ
182 $this->byId("particulier_commune_naissance")->value("LILLE");
183 // On remplit le champ
184 $this->byId("particulier_departement_naissance")->value("NORD");
185 // On remplit le champ
186 $this->byId("numero")->value("12");
187 // On remplit le champ
188 $this->byId("voie")->value("RUE DE LA LOI");
189 // On remplit le champ
190 $this->byId("complement")->value("APPT 12");
191 // On remplit le champ
192 $this->byId("localite")->value("MARSEILLE");
193 // On remplit le champ
194 $this->byId("code_postal")->value("13012");
195 // On remplit le champ
196 $this->byId("telephone_fixe")->value("0404040404");
197 // On sélectionne pétitionnaire fréquent
198 $this->byId("frequent")->click();
199 // On clique sur ajouter
200 $this->byCssSelector("div#sformulaire form div.formControls input.om-button")->click();sleep(1);
201 // On vérifie qu'il n'y ait pas d'erreur
202 $this->verifynoerrors();
203 // On vérifie le message
204 $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("BODY")->text());
205 // On clique sur le bouton retour
206 $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);
207 // On vérifie que le text est présent
208 $this->assertRegExp("/^[\s\S]*DURAND MICKAEL[\s\S]*$/",$this->byCssSelector("BODY")->text());
209 // On clique sur ajouter
210 $this->byXPath("//input[@value='Ajouter']")->click();
211 // On vérifie qu'il n'y ait pas d'erreur
212 $this->verifynoerrors();
213 // On vérifie le message
214 $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC0130551300001[\s\S]*$/",$this->byCssSelector("BODY")->text());
215 // On clique
216 $this->byCssSelector("a.lien")->click();sleep(5);
217 // Liste les fenêtres
218 $windows = $this->windowHandles();
219 // Change la fenêtre
220 $this->window($windows[1]);
221 // On vérifie qu'il n'y ait pas d'erreur
222 $this->verifynoerrors();
223 // On vérifie que le text est présent
224 $this->assertRegExp("/^[\s\S]*RECEPISSE DE DEPOT[\s\S]*$/",$this->source());
225 // On ferme la fenêtre
226 $this->closeWindow();
227 // On change le focus de la fenêtre
228 $this->window($windows[0]);
229 // On clique sur le bouton retour
230 $this->byLinkText("Retour")->click();
231 // On vérifie qu'il n'y ait pas d'erreur
232 $this->verifynoerrors();
233 // On clique sur pétitionnaire fréquent
234 $this->byLinkText("Pétitionnaire Fréquent")->click();
235 // On vérifie qu'il n'y ait pas d'erreur
236 $this->verifynoerrors();
237 // On vérifie que le text est présent
238 $this->assertRegExp("/^[\s\S]*pétitionnaire fréquent[\s\S]*$/",$this->source());
239 // On vérifie que le text est présent
240 $this->assertRegExp("/^[\s\S]*DURAND MICKAEL[\s\S]*$/",$this->source());
241 // On clique sur le résultat
242 $this->byLinkText("DURAND MICKAEL")->click();
243 // On vérifie qu'il n'y ait pas d'erreur
244 $this->verifynoerrors();
245 // On vérifie que le text est présent
246 $this->assertRegExp("/^[\s\S]*RUE DE LA LOI[\s\S]*$/",$this->source());
247 // On clique sur le bouton "Retour"
248 $this->byLinkText("Retour")->click();
249 // On vérifie qu'il n'y ait pas d'erreur
250 $this->verifynoerrors();
251 // On vérifie que le text est présent
252 $this->assertRegExp("/^[\s\S]*pétitionnaire fréquent[\s\S]*$/",$this->source());
253 // On se déconnecte
254 $this->logout();
255 }
256
257 }
258
259 ?>

Properties

Name Value
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26