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

Annotation of /trunk/tests/testSuivi.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1700 - (hide annotations)
Tue Apr 16 10:53:25 2013 UTC (11 years, 9 months ago) by nhaye
File size: 7556 byte(s)
Modification du fichier uploadé dans le test du retour de consultation

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     // Vérification sans valeur saisie
75     $this->clickAndWait("//input[@value='Valider']");
76     $this->verifyTextPresent("Tous les champs doivent être remplis.");
77     // Vérification avec un numéro non présent en base
78     $this->type("id=liste_instruction", "a");
79     $this->clickAndWait("//input[@value='Valider']");
80     $this->verifyTextPresent("Le numéro a ne correspond à aucune instruction.");
81     // Vérification formulaire valide
82     $this->type("id=liste_instruction", "1");
83     $this->clickAndWait("//input[@value='Valider']");
84     $this->verifyNoDatabaseError();
85     $this->verifyTextPresent("1 feuillets générés :");
86     $this->verifyTextPresent("Télécharger les feuillets pour RAR");
87     //
88     $this->logout();
89     }
90 fmichon 1690
91 fmichon 1685 /**
92     *
93     */
94     public function testRetoursDeConsultation() {
95     //
96     $this->login();
97 fmichon 1690
98 fmichon 1685 //
99     $this->clickAndWait("link=retours de consultation");
100     $this->verifyTextPresent("suivi > suivi des pièces > retours de consultation");
101     $this->verifyNoDatabaseError();
102 fmichon 1690
103 fmichon 1685 //
104     $this->clickAndWait("//input[@value='Valider']");
105     $this->verifyNoDatabaseError();
106     $this->verifyTextPresent("Veuiller saisir un N° de consultation.");
107 fmichon 1690
108 fmichon 1685 //
109     $this->type("id=consultation", "aze");
110     $this->clickAndWait("//input[@value='Valider']");
111     $this->verifyNoDatabaseError();
112     $this->verifyTextPresent("Cette consultation n'existe pas.");
113    
114     // XXX Aller plus loin dans les cas d'utilisation lors de la saisie
115     $this->type("id=consultation", "1");
116     $this->clickAndWait("//input[@value='Valider']");
117     $this->verifyNoDatabaseError();
118     $this->verifyTextPresent("suivi > suivi des pièces > retours de consultation > 1");
119     $this->verifyTextPresent("AZ0130551200001P0");
120     $this->select("id=avis_consultation", "label=Favorable");
121     $this->type("id=motivation", "blablabla");
122 nhaye 1699 // Ajout d'un fichier
123     // Test l'affichage d'un fichier si le champ est vide
124     $this->click("css=span.ui-icon.ui-icon-newwin");
125     $this->setSpeed('120');
126     $this->assertEquals("zone vide", $this->getAlert());
127     $this->click("css=span.ui-icon.ui-icon-closethick");
128     // Upload de fichier
129     $this->click("css=span.ui-icon.ui-icon-arrowthickstop-1-s");
130     // Validation sans saisie de fichier
131     $this->click("name=submit");
132     $this->verifyTextPresent("Vous devez sélectionner un fichier.");
133     // Saisie de fichier
134 nhaye 1700 $this->type("name=userfile[]", dirname(__FILE__)."/binaire/lettre_rar16042013124515.pdf");
135 nhaye 1699 $this->click("name=submit");
136     // Visualisation du fichier
137     $this->click("css=span.ui-icon.ui-icon-newwin");
138 nhaye 1700 $this->verifyTextPresent("Voir > [ lettre_rar16042013124515.pdf ]");
139 nhaye 1699 $this->click("css=span.ui-icon.ui-icon-closethick");
140 nhaye 1695 //
141 fmichon 1685 $this->clickAndWait("//input[@value='Modifier']");
142     $this->verifyNoDatabaseError();
143     $this->verifyTextPresent("Vos modifications ont bien été enregistrées.");
144     $this->clickAndWait("link=Retour");
145     $this->verifyTextPresent("suivi > suivi des pièces > retours de consultation");
146 fmichon 1690
147     //
148     $this->logout();
149     }
150 fmichon 1685
151 fmichon 1690 /**
152     *
153     */
154     public function testBordereaux() {
155 fmichon 1685 //
156 fmichon 1690 $this->login();
157    
158     //
159     $this->clickAndWait("link=Bordereaux");
160     $this->verifyTextPresent("suivi > suivi des pièces > bordereaux");
161     $this->verifyNoDatabaseError();
162    
163     //
164     $this->clickAndWait("//input[@value='Valider']");
165     $this->verifyNoDatabaseError();
166     $this->verifyTextPresent("Veuillez sélectionner un bordereau.");
167    
168     //
169     $this->select("id=bordereau", "label=Bordereau d'envoi des avis du Maire au Préfet");
170     $this->click("id=date_bordereau");
171     $this->type("id=date_bordereau", "");
172     $this->assertEquals("La date saisie n'est pas valide", $this->getAlert());
173     $this->clickAndWait("//input[@value='Valider']");
174     $this->verifyNoDatabaseError();
175     $this->verifyTextPresent("Veuillez saisir une date valide.");
176    
177     //
178     $bordereaux = array(
179     "Bordereau d'envoi des avis du Maire au Préfet",
180     "Bordereau d'envoi des contrôles de légalité",
181     "Bordereau d'envoi de courriers signature Maire",
182     "Bordereau d'envoi des décisions",
183     );
184     foreach ($bordereaux as $bordereau) {
185     //
186     $this->select("id=bordereau", "label=".$bordereau."");
187     $this->clickAndWait("//input[@value='Valider']");
188     $this->verifyTextPresent("Cliquez sur le lien ci-dessous pour télécharger votre bordereau : \n\n".$bordereau." au ".date("d/m/Y"));
189     //
190     $this->click("link=".$bordereau." au ".date("d/m/Y"));
191     $this->waitForPopUp("", "30000");
192     $this->selectPopUp();
193     sleep(5);
194     $this->verifyNoDatabaseError();
195     $this->verifyTextPresent("Edition du ".date("d/m/Y"));
196     $this->close();
197     $this->selectWindow();
198     }
199    
200     //
201 fmichon 1685 $this->logout();
202     }
203    
204 fmichon 1673 }
205    
206     ?>

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26