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

Annotation of /trunk/tests/testGuichetUnique.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1990 - (hide annotations)
Thu Jun 6 13:45:34 2013 UTC (11 years, 7 months ago) by softime
File size: 12475 byte(s)
- Suppression du fichier base2.php et insertion de la classe dans base.php
- Amélioration de base.php dans la classe Base2TestCase ajout d'une fonction pour ralentir le temps de'exécution lors de la recherche d'élément
- Modification des tests sur le guichet uniques en selenium 2
- Modifiation des tests sur la finalisation pour supprimer les sleep()
- MAJ HISTORY.txt

1 fmichon 1654 <?php
2     /**
3     *
4     *
5     * @package openfoncier
6     * @version SVN : $Id$
7     */
8    
9     //
10 fmichon 1677 require_once "base.php";
11 fmichon 1654
12     /**
13     *
14     */
15 softime 1990 class GuichetUnique extends Base2TestCase {
16 fmichon 1654
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 softime 1990
23     // On se connecte à l'application
24 fmichon 1727 $this->login("guichet", "guichet");
25 softime 1990 // 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->assertTrue((bool)preg_match("/^[\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->assertTrue((bool)preg_match('/^[\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->assertTrue((bool)preg_match('/^[\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->assertTrue((bool)preg_match("/^[\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->assertTrue((bool)preg_match("/^[\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->assertTrue((bool)preg_match("/^[\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->assertTrue((bool)preg_match("/^[\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 fmichon 1658 $this->logout();
109     }
110 fmichon 1654
111 fmichon 1658 /**
112 softime 1990 * Test le Récépissé
113 fmichon 1658 */
114     public function testRecepisse() {
115 softime 1990
116     // On se connecte à l'application
117 fmichon 1727 $this->login("guichet", "guichet");
118 softime 1990 // 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->assertTrue((bool)preg_match("/^[\s\S]*Demande d'autorisation de construire, d'aménager ou de modifier un ERP[\s\S]*$/",$this->byCssSelector("BODY")->text()));
130 fmichon 1726 // Le nom du pétitionnaire doit apparaître
131 softime 1990 $this->assertTrue((bool)preg_match("/^[\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->assertTrue((bool)preg_match("/^[\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 fmichon 1658 $this->logout();
154 fmichon 1654 }
155    
156 fmichon 1658 /**
157 softime 1990 * Test les pétitionnaires fréquents
158 fmichon 1658 */
159     public function testPetitionnaireFrequent() {
160 softime 1990
161     // On se connecte à l'application
162 fmichon 1727 $this->login("guichet", "guichet");
163 softime 1990 // 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->assertTrue((bool)preg_match("/^[\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->assertTrue((bool)preg_match("/^[\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->assertTrue((bool)preg_match("/^[\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->assertTrue((bool)preg_match("/^[\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->assertTrue((bool)preg_match("/^[\s\S]*pétitionnaire fréquent[\s\S]*$/",$this->source()));
239     // On vérifie que le text est présent
240     $this->assertTrue((bool)preg_match("/^[\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->assertTrue((bool)preg_match("/^[\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->assertTrue((bool)preg_match("/^[\s\S]*pétitionnaire fréquent[\s\S]*$/",$this->source()));
253     // On se déconnecte
254 fmichon 1658 $this->logout();
255     }
256    
257 fmichon 1654 }
258    
259     ?>

Properties

Name Value
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26