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

Annotation of /trunk/tests/testSuivi.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1710 - (hide annotations)
Tue Apr 16 15:27:51 2013 UTC (11 years, 9 months ago) by fmichon
File size: 7869 byte(s)
Correction des tests suite aux nouveaux messages

1 fmichon 1673 <?php
2     /**
3     *
4     *
5     * @package openfoncier
6     * @version SVN : $Id$
7     */
8    
9     //
10 fmichon 1677 require_once "base.php";
11 fmichon 1673
12     /**
13     *
14     */
15     class Suivi extends BaseTestCase {
16    
17     private function login() {
18     // on commence par se connecter
19     $this->connect("suivi", "suivi");
20     // On doit être connecté
21     $this->assertTrue($this->isTextPresent("Votre session est maintenant ouverte."));
22     }
23    
24     private function logout() {
25     // puis on se déconnecte
26     $this->deconnect();
27     // on doit avoir un message nous indiquant que la session est finie
28     $this->assertTrue($this->isTextPresent("Votre session est maintenant terminée."));
29     // on ne doit plus avoir de lien de déconnexion
30     $this->assertFalse($this->isElementPresent("link=Déconnexion"));
31     }
32    
33     /**
34     * Ce test vise uniquement à vérifier que les écrans correspondant à chaque
35     * entrée de menu ne génère pas une erreur de base de données
36 fmichon 1690 *
37     * Ce test est temporaire, il permet d'effectuer un test grossier sur chacun
38     * des écrans en attendant que l'intégralité des cas d'utilisation soient
39     * testés
40 fmichon 1673 */
41     public function testGeneral() {
42     //
43     $this->login();
44 fmichon 1690
45 fmichon 1673 //
46     $this->clickAndWait("link=Mise à jour des dates");
47 fmichon 1681 $this->verifyTextPresent("suivi > suivi des pièces > mise à jour des dates");
48 fmichon 1674 $this->verifyNoDatabaseError();
49 fmichon 1673 //
50     $this->clickAndWait("link=gestion");
51     $this->verifyTextPresent("suivi > commissions > gestion");
52 fmichon 1674 $this->verifyNoDatabaseError();
53 fmichon 1673 //
54     $this->clickAndWait("link=demandes");
55     $this->verifyTextPresent("suivi > commissions > demandes");
56 fmichon 1674 $this->verifyNoDatabaseError();
57 fmichon 1690
58 fmichon 1673 //
59     $this->logout();
60     }
61 nhaye 1695
62     /**
63     * XXX tous les cas d'utilisation ne sont pas testés
64     * Permet de tester la génération de feuillets pour lettre avec accusé de récéption
65     */
66     public function testEnvoiLettreRAR() {
67     //
68     $this->login();
69    
70     //
71     $this->clickAndWait("link=envoi lettre RAR");
72     $this->verifyTextPresent("suivi > suivi des pièces > envoi lettre RAR");
73     $this->verifyNoDatabaseError();
74 fmichon 1710
75 nhaye 1695 // Vérification sans valeur saisie
76     $this->clickAndWait("//input[@value='Valider']");
77     $this->verifyTextPresent("Tous les champs doivent être remplis.");
78 fmichon 1710
79     // Vérification avec un numéro non valide
80 nhaye 1695 $this->type("id=liste_instruction", "a");
81     $this->clickAndWait("//input[@value='Valider']");
82 fmichon 1710 $this->verifyTextPresent("Le code d'instruction a n'est pas valide.");
83    
84     // Vérification avec un numéro non présent en base
85     $this->type("id=liste_instruction", "123");
86     $this->clickAndWait("//input[@value='Valider']");
87     $this->verifyTextPresent("Le numéro 123 ne correspond à aucune instruction.");
88    
89 nhaye 1695 // Vérification formulaire valide
90     $this->type("id=liste_instruction", "1");
91     $this->clickAndWait("//input[@value='Valider']");
92     $this->verifyNoDatabaseError();
93 fmichon 1710 $this->verifyTextPresent("Cliquez sur le lien ci-dessous pour télécharger votre document :");
94     $this->verifyTextPresent("Télécharger le document pour 1 RAR");
95 nhaye 1695 //
96     $this->logout();
97     }
98 fmichon 1710
99 fmichon 1685 /**
100     *
101     */
102     public function testRetoursDeConsultation() {
103     //
104     $this->login();
105 fmichon 1690
106 fmichon 1685 //
107     $this->clickAndWait("link=retours de consultation");
108     $this->verifyTextPresent("suivi > suivi des pièces > retours de consultation");
109     $this->verifyNoDatabaseError();
110 fmichon 1690
111 fmichon 1685 //
112     $this->clickAndWait("//input[@value='Valider']");
113     $this->verifyNoDatabaseError();
114     $this->verifyTextPresent("Veuiller saisir un N° de consultation.");
115 fmichon 1690
116 fmichon 1685 //
117     $this->type("id=consultation", "aze");
118     $this->clickAndWait("//input[@value='Valider']");
119     $this->verifyNoDatabaseError();
120     $this->verifyTextPresent("Cette consultation n'existe pas.");
121    
122     // XXX Aller plus loin dans les cas d'utilisation lors de la saisie
123     $this->type("id=consultation", "1");
124     $this->clickAndWait("//input[@value='Valider']");
125     $this->verifyNoDatabaseError();
126     $this->verifyTextPresent("suivi > suivi des pièces > retours de consultation > 1");
127     $this->verifyTextPresent("AZ0130551200001P0");
128     $this->select("id=avis_consultation", "label=Favorable");
129     $this->type("id=motivation", "blablabla");
130 nhaye 1699 // Ajout d'un fichier
131     // Test l'affichage d'un fichier si le champ est vide
132     $this->click("css=span.ui-icon.ui-icon-newwin");
133     $this->setSpeed('120');
134     $this->assertEquals("zone vide", $this->getAlert());
135     $this->click("css=span.ui-icon.ui-icon-closethick");
136     // Upload de fichier
137     $this->click("css=span.ui-icon.ui-icon-arrowthickstop-1-s");
138     // Validation sans saisie de fichier
139     $this->click("name=submit");
140     $this->verifyTextPresent("Vous devez sélectionner un fichier.");
141     // Saisie de fichier
142 nhaye 1700 $this->type("name=userfile[]", dirname(__FILE__)."/binaire/lettre_rar16042013124515.pdf");
143 nhaye 1699 $this->click("name=submit");
144     // Visualisation du fichier
145     $this->click("css=span.ui-icon.ui-icon-newwin");
146 nhaye 1700 $this->verifyTextPresent("Voir > [ lettre_rar16042013124515.pdf ]");
147 nhaye 1699 $this->click("css=span.ui-icon.ui-icon-closethick");
148 nhaye 1695 //
149 fmichon 1685 $this->clickAndWait("//input[@value='Modifier']");
150     $this->verifyNoDatabaseError();
151     $this->verifyTextPresent("Vos modifications ont bien été enregistrées.");
152     $this->clickAndWait("link=Retour");
153     $this->verifyTextPresent("suivi > suivi des pièces > retours de consultation");
154 fmichon 1690
155     //
156     $this->logout();
157     }
158 fmichon 1710
159 fmichon 1690 /**
160     *
161     */
162     public function testBordereaux() {
163 fmichon 1685 //
164 fmichon 1690 $this->login();
165 fmichon 1710
166 fmichon 1690 //
167     $this->clickAndWait("link=Bordereaux");
168     $this->verifyTextPresent("suivi > suivi des pièces > bordereaux");
169     $this->verifyNoDatabaseError();
170 fmichon 1710
171 fmichon 1690 //
172     $this->clickAndWait("//input[@value='Valider']");
173     $this->verifyNoDatabaseError();
174     $this->verifyTextPresent("Veuillez sélectionner un bordereau.");
175    
176     //
177     $this->select("id=bordereau", "label=Bordereau d'envoi des avis du Maire au Préfet");
178     $this->click("id=date_bordereau");
179     $this->type("id=date_bordereau", "");
180     $this->assertEquals("La date saisie n'est pas valide", $this->getAlert());
181     $this->clickAndWait("//input[@value='Valider']");
182     $this->verifyNoDatabaseError();
183     $this->verifyTextPresent("Veuillez saisir une date valide.");
184 fmichon 1710
185 fmichon 1690 //
186     $bordereaux = array(
187     "Bordereau d'envoi des avis du Maire au Préfet",
188     "Bordereau d'envoi des contrôles de légalité",
189     "Bordereau d'envoi de courriers signature Maire",
190     "Bordereau d'envoi des décisions",
191     );
192     foreach ($bordereaux as $bordereau) {
193     //
194     $this->select("id=bordereau", "label=".$bordereau."");
195     $this->clickAndWait("//input[@value='Valider']");
196     $this->verifyTextPresent("Cliquez sur le lien ci-dessous pour télécharger votre bordereau : \n\n".$bordereau." au ".date("d/m/Y"));
197     //
198     $this->click("link=".$bordereau." au ".date("d/m/Y"));
199     $this->waitForPopUp("", "30000");
200     $this->selectPopUp();
201     sleep(5);
202     $this->verifyNoDatabaseError();
203     $this->verifyTextPresent("Edition du ".date("d/m/Y"));
204     $this->close();
205     $this->selectWindow();
206     }
207 fmichon 1710
208 fmichon 1690 //
209 fmichon 1685 $this->logout();
210     }
211    
212 fmichon 1673 }
213    
214     ?>

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26