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

Contents of /trunk/tests/testFinalisationDocuments.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2112 - (show annotations)
Wed Jul 24 17:08:32 2013 UTC (11 years, 6 months ago) by softime
File size: 16030 byte(s)
Ajout du champ dossier_libelle pour la table dossier
Ajout du champ dossier_autorisation_libelle pour la table dossier_autorisation
Génération OM
Modification des formulaires, messages, tableaux et fil d'Ariane pour affiché le numéro de dossier formaté
Traduction des nouveaux champs
Correction des tests utilisant les numéro de dossier
MàJ HISTORY.txt

1 <?php
2 /**
3 *
4 *
5 * @package openfoncier
6 * @version SVN : $Id: testFinalisationDocuments.php
7 */
8
9 //
10 require_once "base.php";
11
12 /**
13 * Test de la finalisatiotn des documents.
14 */
15 class FinalisationDocuments extends Base2TestCase {
16
17 /**
18 * Test de la finalisation du rapport d'instruction par un instructeur pour le
19 * dossier PC0130551200001.
20 */
21 function testFinalisationRapportInstruction(){
22
23 // On se connecte en tant que "instr"
24 $this->login("instr", "instr");
25 // On clique sur le menu des encours
26 $this->byLinkText("Mes Encours")->click();
27 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
28 $this->verifyNoErrors();
29 // On clique sur le dossier PC0130551200001
30 $this->byLinkText("PC 013055 12 00002P0")->click();
31 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
32 $this->verifyNoErrors();
33 // On clique sur le lien "Rapport d'instruction" dans le portlet d'action
34 $this->byXPath("//ul[@class='portlet-list']/li[3]/a")->click();
35 // On valide le rapport d'instruction
36 $this->byXPath("//input[@value='Ajouter']")->click();
37 // On vérifie que le rapport d'instruction s'est bien ajouté
38 $this->assertEquals("Vos modifications ont bien été enregistrées.", $this->byCssSelector("#sousform-rapport_instruction .message .text")->text());
39 // On clique sur retour
40 $this->byCssSelector("#sousform-rapport_instruction form a.retour")->click();
41 // On clique sur le lien "Rapport d'instruction" dans le portlet d'action
42 $this->byXPath("//ul[@class='portlet-list']/li[3]/a")->click();
43 // On finalise le document
44 $this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(3) a")->click();
45 // On vérifie le message de validation
46 $this->assertEquals('La finalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-rapport_instruction .message .text")->text());
47 // On vérifie que le lien de finalisation a disparu
48 try {
49 $el = $this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.finalise");
50 $this->fail('Cet élément ne devrait pas exister.');
51 } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
52 $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
53 }
54 //On vérifie que l'action de modification n'existe plus
55 try {
56 $el = $this->byCssSelector("#sousform-rapport_instruction .edit-16");
57 $this->fail('Cet élément ne devrait pas exister.');
58 } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
59 $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
60 }
61 // On vérifie que le lien de dé-finalisation est apparu
62 $this->assertTrue($this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(2) a span.definalise")->displayed());
63 $this->assertEquals("Reprendre la rédaction du document", $this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(2) a span.definalise")->text());
64 // On vérifie que le lien de l'édition a changé
65 $this->assertRegExp('/^[\s\S]*spg\/file\.php[\s\S]*$/',$this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(1) a")->attribute("href"));
66 // On dé-finalise le document en cliquant sur le lien Reprendre la rédaction
67 // du document
68 $this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(2) a")->click();
69 // On vérifie le message de validation
70 $this->assertEquals('La definalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-rapport_instruction .message .text")->text());
71 // On vérifie que le lien de dé-finalisation a disparu
72 try {
73 $el = $this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.definalise");
74 $this->fail('Cet élément ne devrait pas exister.');
75 } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
76 $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
77 }
78 // On vérifie que le lien de modification est apparu
79 $this->assertTrue($this->byCssSelector("#sousform-rapport_instruction .edit-16")->displayed());
80 // On vérifie que le lien de finalisation est apparu
81 $this->assertTrue($this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.finalise")->displayed());
82 $this->assertEquals("Finaliser le document", $this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.finalise")->text());
83 // On vérifie que le lien de l'édition a changé
84 $this->assertRegExp('/^[\s\S]*pdf\/pdfetat\.php[\s\S]*$/',$this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(2) a")->attribute("href"));
85 //On ferme l'overlay
86 $this->byCssSelector(".ui-dialog-titlebar a.ui-dialog-titlebar-close")->click();
87 // On se déconnecte de l'application
88 $this->deconnect();
89 }
90
91 /**
92 * Test de la finalisation du document lors de l'ajout d'une consultation par un
93 * instructeur pour le dossier PC0130551200001.
94 */
95 function testFinalisationAjoutConsultation(){
96
97 // On se connecte en tant que "instr"
98 $this->login("instr", "instr");
99 // On clique sur le menu des encours
100 $this->byLinkText("Mes Encours")->click();
101 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
102 $this->verifyNoErrors();
103 // On clique sur le dossier PC0130551200001
104 $this->byLinkText("PC 013055 12 00002P0")->click();
105 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
106 $this->verifyNoErrors();
107 // On clique sur l'onglet consultation
108 $this->byId("consultation")->click();
109 // On clique sur le + pour ajouter une consultation
110 $this->byCssSelector("#sousform-consultation .actions-max-2 a")->click();
111 // On choisi le service
112 $this->select($this->byId("service"))->selectOptionByValue("1");
113 // On clique sur le bouton ajouter
114 $this->byXPath("//input[@value='Ajouter']")->click();
115 // On vérifie que la consultation a bien été ajoutée
116 $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-consultation .message .text")->text());
117 // On clique sur retour
118 $this->byCssSelector("#sousform-consultation form a.retour")->click();
119 // On clique sur la consultation
120 $this->byCssSelector(".odd .firstcol a")->click();
121 // On vérifie le lien de l'édition a changé
122 $this->assertRegExp('/^[\s\S]*spg\/file\.php[\s\S]*$/',$this->byCssSelector("#sousform-consultation .portlet-list li:nth-child(1) a")->attribute("href"));
123 //On vérifie que l'action de modification n'existe plus
124 try {
125 $el = $this->byCssSelector("#sousform-rapport_instruction .edit-16");
126 $this->fail('Cet élément ne devrait pas exister.');
127 } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
128 $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
129 }
130 // On se déconnecte de l'application
131 $this->deconnect();
132 }
133
134 /**
135 * Test de la finalisation du document d'une instruction par un instructeur pour
136 * le dossier PC0130551200001.
137 */
138 function testFinalisationInstruction(){
139
140 // On se connecte en tant que "instr"
141 $this->login("instr", "instr");
142 // On clique sur le menu des encours
143 $this->byLinkText("Mes Encours")->click();
144 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
145 $this->verifyNoErrors();
146 // On clique sur le dossier PC0130551200001
147 $this->byLinkText("PC 013055 12 00002P0")->click();
148 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
149 $this->verifyNoErrors();
150 //Ralenti l'exécution du script pour permettre au JS de se charger
151 $this->byId("instruction")->click();
152 // On clique sur le + pour ajouter une instruction
153 $this->byCssSelector("#sousform-instruction .actions-max-1 a")->click();
154 // On choisi l'événement
155 $this->select($this->byId("evenement"))->selectOptionByValue("62");
156 // On clique sur le bouton ajouter
157 $this->byXPath("//input[@value='Ajouter']")->click();
158 // On vérifie que l'instruction s'est bien ajouté
159 $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-instruction .message .text")->text());
160 // On clique sur le bouton retour
161 $this->byCssSelector("#sousform-instruction form a.retour")->click();
162 // On clique sur l'instruction nouvellement créée
163 $this->byLinkText("adjoint")->click();
164 // On vérifie que le lien de finalisation est apparu
165 $this->assertTrue($this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(3) a span.finalise")->displayed());
166 $this->assertEquals("Finaliser le document", $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(3) a span.finalise")->text());
167 // On vérifie que le lien de l'édition a changé
168 $this->assertRegExp('/^[\s\S]*app\/pdf_instruction\.php[\s\S]*$/',$this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(2) a")->attribute("href"));
169 // On finalise le document
170 $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(3) a")->click();
171 // On vérifie le message de validation
172 $this->assertEquals('La finalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-instruction .message .text")->text());
173 // On vérifie que le lien de finalisation a disparu
174 try {
175 $el = $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(3) a span.finalise");
176 $this->fail('Cet élément ne devrait pas exister.');
177 } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
178 $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
179 }
180 // On vérifie que le lien de modification a disparu
181 try {
182 $el = $this->byCssSelector("#sousform-instruction .portlet-list edit-16");
183 $this->fail('Cet élément ne devrait pas exister.');
184 } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
185 $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
186 }
187 // On vérifie que le lien de dé-finalisation est apparu
188 $this->assertTrue($this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(2) a span.definalise")->displayed());
189 $this->assertEquals("Reprendre la rédaction du document", $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(2) a span.definalise")->text());
190 // On vérifie que le lien de l'édition a changé
191 $this->assertRegExp('/^[\s\S]*spg\/file\.php[\s\S]*$/',$this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(1) a")->attribute("href"));
192 // On dé-finalise le document en cliquant sur le lien Reprendre la rédaction
193 // du document
194 $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(2) a")->click();
195 // On vérifie le message de validation
196 $this->assertEquals('La definalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-instruction .message .text")->text());
197 // On vérifie que le lien de dé-finalisation a disparu
198 try {
199 $el = $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(2) a span.definalise");
200 $this->fail('Cet élément ne devrait pas exister.');
201 } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
202 $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
203 }
204 //On vérifie que le lien de modification est apparu
205 $this->assertTrue($this->byCssSelector("#sousform-instruction .portlet-list .edit-16")->displayed());
206 //On se déconnecte de l'application
207 $this->deconnect();
208 }
209
210 /**
211 * Test de la finalisation du compte rendu et de l'ordre du jour d'une commission
212 * par la cellule suivi.
213 */
214 function testFinalisationCommission(){
215
216 // On se connecte en tant que "instr"
217 $this->login("instr", "instr");
218 // On clique sur le menu des encours
219 $this->byLinkText("Mes Encours")->click();
220 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
221 $this->verifyNoErrors();
222 // On clique sur le dossier PC0130551200001
223 $this->byLinkText("PC 013055 12 00002P0")->click();
224 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
225 $this->verifyNoErrors();
226 // On clique sur l'onglet commission
227 $this->byId("dossier_commission")->click();
228 // On clique sur le + pour ajouter une commission
229 $this->byCssSelector("#sousform-dossier_commission .actions-max-1 a")->click();
230 // On choisi le type de commission
231 $this->select($this->byId("commission_type"))->selectOptionByValue("1");
232 // On clique sur le bouton ajouter
233 $this->byXPath("//input[@value='Ajouter']")->click();
234 // On vérifie que l'instruction s'est bien ajouté
235 $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-dossier_commission .message .text")->text());
236 //On se déconnecte de l'application
237 $this->deconnect();
238
239
240 // On se connecte en tant que "suivi"
241 $this->login("suivi", "suivi");
242 // On clique sur le menu gestion
243 $this->byLinkText("Gestion")->click();
244 // On clique sur la commission numéro 1
245 $this->byLinkText("1")->click();
246 //Mise à jour de la liste de diffusion
247 $this->byCssSelector(".portlet-list li:nth-child(1) a")->click();
248 $this->byId("listes_de_diffusion")->clear();
249 $this->byId("listes_de_diffusion")->value("[email protected]");
250 $this->byXPath("//input[@value='Modifier']")->click();
251 // On vérifie que la commission s'est bien mise à jour
252 $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector(".message .text")->text());
253 //On clique sur le lien retour
254 $this->byLinkText("Retour")->click();
255 //On clique sur la diffusion de l'ordre du jour
256 $this->byCssSelector(".portlet-list li:nth-child(3) a")->click();
257 // On vérifie que le lien de l'édition a changé
258 $this->assertRegExp('/^[\s\S]*spg\/file\.php[\s\S]*$/',$this->byCssSelector(".portlet-list li:nth-child(6) a")->attribute("href"));
259 // On clique sur la diffusion du compte rendu
260 $this->byCssSelector(".portlet-list li:nth-child(4) a")->click();
261 // On vérifie que le lien de l'édition a changé
262 $this->assertRegExp('/^[\s\S]*spg\/file\.php[\s\S]*$/',$this->byCssSelector(".portlet-list li:nth-child(7) a")->attribute("href"));
263 //On se déconnecte de l'application
264 $this->deconnect();
265 }
266 }

Properties

Name Value
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26