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 BaseTestCase { |
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->clickAndWait("link=mes encours"); |
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->clickAndWait("link=PC0130551200002P0"); |
31 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
32 |
$this->verifyNoErrors(); |
33 |
//Ralenti l'exécution du script pour permettre au JS de se charger |
34 |
$this->setSpeed('120'); |
35 |
// On clique sur le lien "Rapport d'instruction" dans le portlet d'action |
36 |
$this->click("//ul[@class='portlet-list']/li[3]/a"); |
37 |
// On valide le rapport d'instruction |
38 |
$this->click("//input[@value='Ajouter']"); |
39 |
// On vérifie que le rapport d'instruction s'est bien ajouté |
40 |
$this->assertText("css=#sousform-rapport_instruction .message .text", 'Vos modifications ont bien été enregistrées.'); |
41 |
// On clique sur retour |
42 |
$this->click("css=#sousform-rapport_instruction form a.retour"); |
43 |
// On clique sur le lien "Rapport d'instruction" dans le portlet d'action |
44 |
$this->click("//ul[@class='portlet-list']/li[3]/a"); |
45 |
// On finalise le document |
46 |
$this->click("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a"); |
47 |
// On vérifie le message de validation |
48 |
$this->assertText("css=#sousform-rapport_instruction .message .text", 'La finalisation du document s\'est effectuée avec succés\.'); |
49 |
// On vérifie que le lien de finalisation a disparu |
50 |
$this->assertElementNotPresent("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.finalise"); |
51 |
// On vérifie que le lien de dé-finalisation est apparu |
52 |
$this->assertElementPresent("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.definalise"); |
53 |
$this->assertText("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.definalise","Reprendre la rédaction du document"); |
54 |
// On vérifie que le lien de l'édition a changé |
55 |
$this->assertAttribute( "css=#sousform-rapport_instruction .portlet-list li:nth-child(2) a@href", "*spg/file.php*"); |
56 |
// On dé-finalise le document en cliquant sur le lien Reprendre la rédaction |
57 |
// du document |
58 |
$this->click("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a"); |
59 |
// On vérifie le message de validation |
60 |
$this->assertText("css=#sousform-rapport_instruction .message .text", 'La definalisation du document s\'est effectuée avec succés\.'); |
61 |
// On vérifie que le lien de dé-finalisation a disparu |
62 |
$this->assertElementNotPresent("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.definalise"); |
63 |
// On vérifie que le lien de finalisation est apparu |
64 |
$this->assertElementPresent("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.finalise"); |
65 |
$this->assertText("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.finalise","Finaliser le document"); |
66 |
// On vérifie que le lien de l'édition a changé |
67 |
$this->assertAttribute( "css=#sousform-rapport_instruction .portlet-list li:nth-child(2) a@href", "*pdf/pdfetat.php*"); |
68 |
//On ferme l'overlay |
69 |
$this->click("css=.ui-dialog-titlebar a.ui-dialog-titlebar-close"); |
70 |
// On se déconnecte de l'application |
71 |
$this->deconnect(); |
72 |
} |
73 |
|
74 |
/** |
75 |
* Test de la finalisation du document lors de l'ajout d'une consultation par un |
76 |
* instructeur pour le dossier PC0130551200001. |
77 |
*/ |
78 |
function testFinalisationAjoutConsultation(){ |
79 |
|
80 |
// On se connecte en tant que "instr" |
81 |
$this->login("instr", "instr"); |
82 |
// On clique sur le menu des encours |
83 |
$this->clickAndWait("link=mes encours"); |
84 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
85 |
$this->verifyNoErrors(); |
86 |
// On clique sur le dossier PC0130551200001 |
87 |
$this->clickAndWait("link=PC0130551200002P0"); |
88 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
89 |
$this->verifyNoErrors(); |
90 |
//Ralenti l'exécution du script pour permettre au JS de se charger |
91 |
$this->setSpeed('120'); |
92 |
// On clique sur l'onglet consultation |
93 |
$this->click("id=consultation"); |
94 |
// On clique sur le + pour ajouter une consultation |
95 |
$this->click("css=#sousform-consultation .actions-max-2 a"); |
96 |
// On choisi le service |
97 |
$this->select("id=service", "value=1"); |
98 |
// On clique sur le bouton ajouter |
99 |
$this->click("//input[@value='Ajouter']"); |
100 |
// On vérifie que la consultation a bien été ajoutée |
101 |
$this->assertText("css=#sousform-consultation .message .text", 'regexp:.*Vos modifications ont bien été enregistrées.*'); |
102 |
// On clique sur retour |
103 |
$this->click("css=#sousform-consultation form a.retour"); |
104 |
// On clique sur la consultation |
105 |
$this->click("link=1"); |
106 |
// On vérifie le lien de l'édition a changé |
107 |
$this->assertAttribute( "css=#sousform-consultation .portlet-list li:nth-child(3) a@href", "*spg/file.php*"); |
108 |
// On se déconnecte de l'application |
109 |
$this->deconnect(); |
110 |
} |
111 |
|
112 |
/** |
113 |
* Test de la finalisation du document lors de l'ajout d'une instruction par un |
114 |
* instructeur pour le dossier PC0130551200001. |
115 |
*/ |
116 |
function testFinalisationInstruction(){ |
117 |
|
118 |
// On se connecte en tant que "instr" |
119 |
$this->login("instr", "instr"); |
120 |
// On clique sur le menu des encours |
121 |
$this->clickAndWait("link=mes encours"); |
122 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
123 |
$this->verifyNoErrors(); |
124 |
// On clique sur le dossier PC0130551200001 |
125 |
$this->clickAndWait("link=PC0130551200002P0"); |
126 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
127 |
$this->verifyNoErrors(); |
128 |
//Ralenti l'exécution du script pour permettre au JS de se charger |
129 |
$this->setSpeed('120'); |
130 |
// On clique sur l'onglet instruction |
131 |
$this->click("id=instruction"); |
132 |
// On clique sur le + pour ajouter une instruction |
133 |
$this->click("css=#sousform-instruction .actions-max-1 a"); |
134 |
// On choisi l'événement |
135 |
$this->select("id=evenement","value=62"); |
136 |
// On clique sur le bouton ajouter |
137 |
$this->click("//input[@value='Ajouter']"); |
138 |
// On vérifie que l'instruction s'est bien ajouté |
139 |
$this->assertText("css=#sousform-instruction .message .text", 'regexp:.*Vos modifications ont bien été enregistrées.*'); |
140 |
// On clique sur le bouton retour |
141 |
$this->click("css=#sousform-instruction form a.retour"); |
142 |
// On clique sur l'instruction nouvellement créée |
143 |
$this->click("link=10"); |
144 |
// On dé-finalise le document en cliquant sur le lien Reprendre la rédaction |
145 |
// du document |
146 |
$this->click("css=#sousform-instruction .portlet-list li:nth-child(3) a"); |
147 |
// On vérifie le message de validation |
148 |
$this->assertText("css=#sousform-instruction .message .text", 'La definalisation du document s\'est effectuée avec succés\.'); |
149 |
// On vérifie que le lien de dé-finalisation a disparu |
150 |
$this->assertElementNotPresent("css=#sousform-instruction .portlet-list li:nth-child(3) a span.definalise"); |
151 |
// On vérifie que le lien de finalisation est apparu |
152 |
$this->assertElementPresent("css=#sousform-instruction .portlet-list li:nth-child(3) a span.finalise"); |
153 |
$this->assertText("css=#sousform-instruction .portlet-list li:nth-child(3) a span.finalise","Finaliser le document"); |
154 |
// On vérifie que le lien de l'édition a changé |
155 |
$this->assertAttribute( "css=#sousform-instruction .portlet-list li:nth-child(2) a@href", "*app/pdf_instruction.php*"); |
156 |
// On finalise le document |
157 |
$this->click("css=#sousform-instruction .portlet-list li:nth-child(3) a"); |
158 |
// On vérifie le message de validation |
159 |
$this->assertText("css=#sousform-instruction .message .text", 'La finalisation du document s\'est effectuée avec succés\.'); |
160 |
// On vérifie que le lien de finalisation a disparu |
161 |
$this->assertElementNotPresent("css=#sousform-instruction .portlet-list li:nth-child(3) a span.finalise"); |
162 |
// On vérifie que le lien de dé-finalisation est apparu |
163 |
$this->assertElementPresent("css=#sousform-instruction .portlet-list li:nth-child(3) a span.definalise"); |
164 |
$this->assertText("css=#sousform-instruction .portlet-list li:nth-child(3) a span.definalise","Reprendre la rédaction du document"); |
165 |
// On vérifie que le lien de l'édition a changé |
166 |
$this->assertAttribute( "css=#sousform-instruction .portlet-list li:nth-child(2) a@href", "*spg/file.php*"); |
167 |
//On se déconnecte de l'application |
168 |
$this->deconnect(); |
169 |
} |
170 |
|
171 |
/** |
172 |
* Test de la finalisation du compte rendu et de l'ordre du jour d'une commission |
173 |
* par la cellule suivi. |
174 |
*/ |
175 |
function testFinalisationCommission(){ |
176 |
|
177 |
// On se connecte en tant que "instr" |
178 |
$this->login("instr", "instr"); |
179 |
// On clique sur le menu des encours |
180 |
$this->clickAndWait("link=mes encours"); |
181 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
182 |
$this->verifyNoErrors(); |
183 |
// On clique sur le dossier PC0130551200001 |
184 |
$this->clickAndWait("link=AZ0130551200001P0"); |
185 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
186 |
$this->verifyNoErrors(); |
187 |
//Ralenti l'exécution du script pour permettre au JS de se charger |
188 |
$this->setSpeed('120'); |
189 |
// On clique sur l'onglet commission |
190 |
$this->click("id=dossier_commission"); |
191 |
// On clique sur le + pour ajouter une commission |
192 |
$this->click("css=#sousform-dossier_commission .actions-max-1 a"); |
193 |
// On choisi le type de commission |
194 |
$this->select("id=commission_type","value=1"); |
195 |
// On clique sur le bouton ajouter |
196 |
$this->click("//input[@value='Ajouter']"); |
197 |
// On vérifie que l'instruction s'est bien ajouté |
198 |
$this->assertText("css=#sousform-dossier_commission .message .text", 'regexp:.*Vos modifications ont bien été enregistrées.*'); |
199 |
//On se déconnecte de l'application |
200 |
$this->deconnect(); |
201 |
|
202 |
|
203 |
// On se connecte en tant que "suivi" |
204 |
$this->login("suivi", "suivi"); |
205 |
// On clique sur le menu gestion |
206 |
$this->clickAndWait("link=gestion"); |
207 |
// On clique sur la commission numéro 1 |
208 |
$this->click("link=1"); |
209 |
//Mise à jour de la liste de diffusion |
210 |
$this->clickAndWait("css=.portlet-list li:nth-child(1) a"); |
211 |
$this->type("id=listes_de_diffusion","[email protected]"); |
212 |
$this->clickAndWait("//input[@value='Modifier']"); |
213 |
// On vérifie que la commission s'est bien mise à jour |
214 |
$this->assertText("css=.message .text", 'regexp:.*Vos modifications ont bien été enregistrées.*'); |
215 |
//On clique sur le lien retour |
216 |
$this->clickAndWait("link=Retour"); |
217 |
//On clique sur la diffusion de l'ordre du jour |
218 |
$this->click("css=.portlet-list li:nth-child(3) a"); |
219 |
// On vérifie que le lien de l'édition a changé |
220 |
$this->assertAttribute( "css=.portlet-list li:nth-child(6) a@href", "*spg/file.php*"); |
221 |
// On clique sur la diffusion du compte rendu |
222 |
$this->click("css=.portlet-list li:nth-child(4) a"); |
223 |
// On vérifie que le lien de l'édition a changé |
224 |
$this->assertAttribute( "css=.portlet-list li:nth-child(7) a@href", "*spg/file.php*"); |
225 |
//On se déconnecte de l'application |
226 |
$this->deconnect(); |
227 |
} |
228 |
} |