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

Diff of /trunk/tests/testFinalisationDocuments.php

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1957 by softime, Wed May 29 17:15:16 2013 UTC revision 2603 by vpihour, Wed Dec 11 11:46:47 2013 UTC
# Line 12  require_once "base.php"; Line 12  require_once "base.php";
12  /**  /**
13   * Test de la finalisatiotn des documents.   * Test de la finalisatiotn des documents.
14   */   */
15  class FinalisationDocuments extends BaseTestCase {  class FinalisationDocuments extends Base2TestCase {
16            
17      /**      /**
18       * Test de la finalisation du rapport d'instruction par un instructeur pour le       * Test de la finalisation du rapport d'instruction par un instructeur pour le
19       * dossier PC0130551200001.       * dossier PC0130551200001.
20       */       */
21      function testFinalisationRapportInstruction(){      function testFinalisationRapportInstruction(){
22            
23          // On se connecte en tant que "instr"          // On se connecte en tant que "instr"
24          $this->login("instr", "instr");          $this->login("instr", "instr");
25          // On clique sur le menu des encours          // On clique sur le menu des encours
26          $this->clickAndWait("link=mes encours");          $this->byLinkText("Mes Encours")->click();
27          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
28          $this->verifyNoErrors();          $this->verifyNoErrors();
29          // On clique sur le dossier PC0130551200001          // On clique sur le dossier PC0130551200001
30          $this->clickAndWait("link=PC0130551200002P0");          $this->byLinkText("PC 013055 12 00002P0")->click();
31          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
32          $this->verifyNoErrors();          $this->verifyNoErrors();
         //Ralenti l'exécution du script pour permettre au JS de se charger  
         $this->setSpeed('120');  
33          // On clique sur le lien "Rapport d'instruction" dans le portlet d'action          // On clique sur le lien "Rapport d'instruction" dans le portlet d'action
34          $this->click("//ul[@class='portlet-list']/li[3]/a");          $this->byId("action-form-dossier_instruction_mes_encours-rapport_instruction")->click();
35            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
36            $this->verifyNoErrors();
37          // On valide le rapport d'instruction          // On valide le rapport d'instruction
38          $this->click("//input[@value='Ajouter']");          $this->byXPath("//input[@value='Ajouter']")->click();
39            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
40            $this->verifyNoErrors();
41          // On vérifie que le rapport d'instruction s'est bien ajouté          // On vérifie que le rapport d'instruction s'est bien ajouté
42          $this->assertText("css=#sousform-rapport_instruction .message .text", 'Vos modifications ont bien été enregistrées.');          $this->assertEquals("Vos modifications ont bien été enregistrées.", $this->byCssSelector("#sousform-rapport_instruction .message .text")->text());
43          // On clique sur retour          // On clique sur retour
44          $this->click("css=#sousform-rapport_instruction form a.retour");          $this->byCssSelector("#sousform-rapport_instruction form a.retour")->click();
45            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
46            $this->verifyNoErrors();
47          // On clique sur le lien "Rapport d'instruction" dans le portlet d'action          // On clique sur le lien "Rapport d'instruction" dans le portlet d'action
48          $this->click("//ul[@class='portlet-list']/li[3]/a");          $this->byId("action-form-dossier_instruction_mes_encours-rapport_instruction")->click();
49            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
50            $this->verifyNoErrors();
51          // On finalise le document          // On finalise le document
52          $this->click("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a");          $this->byId("action-sousform-rapport_instruction-finalisation")->click();
53            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
54            $this->verifyNoErrors();
55          // On vérifie le message de validation          // On vérifie le message de validation
56          $this->assertText("css=#sousform-rapport_instruction .message .text", 'La finalisation du document s\'est effectuée avec succès\.');          $this->assertEquals('La finalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-rapport_instruction .message .text")->text());
57          // On vérifie que le lien de finalisation a disparu          // On vérifie que le lien de finalisation a disparu
58          $this->assertElementNotPresent("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.finalise");          try {
59                $el = $this->byId("action-sousform-rapport_instruction-finalisation");
60                $this->fail('Cet élément ne devrait pas exister.');
61            } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
62                $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
63            }
64            //On vérifie que l'action de modification n'existe plus
65            try {
66                $el = $this->byId("action-sousform-rapport_instruction-modifier");
67                $this->fail('Cet élément ne devrait pas exister.');
68            } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
69                $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
70            }
71          // On vérifie que le lien de dé-finalisation est apparu          // On vérifie que le lien de dé-finalisation est apparu
72          $this->assertElementPresent("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.definalise");          $this->assertTrue($this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(2) a span.definalise")->displayed());
73          $this->assertText("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.definalise","Reprendre la rédaction du document");          $this->assertEquals("Reprendre la rédaction du document", $this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(2) a span.definalise")->text());
74          // On vérifie que le lien de l'édition a changé          // On vérifie que le lien de l'édition a changé
75          $this->assertAttribute( "css=#sousform-rapport_instruction .portlet-list li:nth-child(2) a@href", "*spg/file.php*");          $this->assertRegExp('/^[\s\S]*spg\/file\.php[\s\S]*$/', $this->byId("action-sousform-rapport_instruction-edition")->attribute("href"));
76          // On dé-finalise le document en cliquant sur le lien Reprendre la rédaction          // On dé-finalise le document en cliquant sur le lien Reprendre la rédaction
77          // du document          // du document
78          $this->click("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a");          $this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(2) a")->click();
79            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
80            $this->verifyNoErrors();
81          // On vérifie le message de validation          // On vérifie le message de validation
82          $this->assertText("css=#sousform-rapport_instruction .message .text", 'La definalisation du document s\'est effectuée avec succès\.');          $this->assertEquals('La definalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-rapport_instruction .message .text")->text());
83          // On vérifie que le lien de dé-finalisation a disparu          // On vérifie que le lien de dé-finalisation a disparu
84          $this->assertElementNotPresent("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.definalise");          try {
85                $el = $this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.definalise");
86                $this->fail('Cet élément ne devrait pas exister.');
87            } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
88                $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
89            }
90            // On vérifie que le lien de modification est apparu
91            $this->assertTrue($this->byCssSelector("#sousform-rapport_instruction .edit-16")->displayed());
92          // On vérifie que le lien de finalisation est apparu          // On vérifie que le lien de finalisation est apparu
93          $this->assertElementPresent("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.finalise");          $this->assertTrue($this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.finalise")->displayed());
94          $this->assertText("css=#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.finalise","Finaliser le document");          $this->assertEquals("Finaliser le document", $this->byCssSelector("#sousform-rapport_instruction .portlet-list li:nth-child(3) a span.finalise")->text());
95          // On vérifie que le lien de l'édition a changé          // On vérifie que le lien de l'édition a changé
96          $this->assertAttribute( "css=#sousform-rapport_instruction .portlet-list li:nth-child(2) a@href", "*pdf/pdfetat.php*");          $this->assertRegExp('/^[\s\S]*pdf\/pdfetat\.php[\s\S]*$/', $this->byId("action-sousform-rapport_instruction-edition")->attribute("href"));
97          //On ferme l'overlay          //On ferme l'overlay
98          $this->click("css=.ui-dialog-titlebar a.ui-dialog-titlebar-close");          $this->byCssSelector(".ui-dialog-titlebar a.ui-dialog-titlebar-close")->click();
99            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
100            $this->verifyNoErrors();
101          // On se déconnecte de l'application          // On se déconnecte de l'application
102          $this->deconnect();          $this->logout();
103      }      }
104            
105      /**      /**
106       * Test de la finalisation du document lors de l'ajout d'une consultation par un       * Test de la finalisation du document lors de l'ajout d'une consultation par un
107       * instructeur pour le dossier PC0130551200001.       * instructeur pour le dossier PC 013055 12 00002P0.
108       */       */
109      function testFinalisationAjoutConsultation(){      function testFinalisationAjoutConsultation(){
110                    
111          // On se connecte en tant que "instr"          // On se connecte en tant que "instr"
112          $this->login("instr", "instr");          $this->login("instr", "instr");
113          // On clique sur le menu des encours          // On clique sur le menu des encours
114          $this->clickAndWait("link=mes encours");          $this->byLinkText("Mes Encours")->click();
115          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
116          $this->verifyNoErrors();          $this->verifyNoErrors();
117          // On clique sur le dossier PC0130551200001          // On clique sur le dossier PC0130551200001
118          $this->clickAndWait("link=PC0130551200002P0");          $this->byLinkText("PC 013055 12 00002P0")->click();
119          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
120          $this->verifyNoErrors();          $this->verifyNoErrors();
         //Ralenti l'exécution du script pour permettre au JS de se charger  
         $this->setSpeed('120');  
121          // On clique sur l'onglet consultation          // On clique sur l'onglet consultation
122          $this->click("id=consultation");          $this->byId("consultation")->click();
123            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
124            $this->verifyNoErrors();
125          // On clique sur le + pour ajouter une consultation          // On clique sur le + pour ajouter une consultation
126          $this->click("css=#sousform-consultation .actions-max-2 a");          $this->byCssSelector("#sousform-consultation .actions-max-2 a")->click();
127          // On choisi le service          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
128          $this->select("id=service", "value=1");          $this->verifyNoErrors();
129            // On choisi le service "Atelier du Patrimoine"
130            $this->select($this->byId("service"))->selectOptionByValue("2");
131          // On clique sur le bouton ajouter          // On clique sur le bouton ajouter
132          $this->click("//input[@value='Ajouter']");          $this->byXPath("//input[@value='Ajouter']")->click();
133            sleep(1);
134            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
135            $this->verifyNoErrors();
136          // On vérifie que la consultation a bien été ajoutée          // On vérifie que la consultation a bien été ajoutée
137          $this->assertText("css=#sousform-consultation .message .text", 'regexp:.*Vos modifications ont bien été enregistrées.*');          $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-consultation .message .text")->text());
138          // On clique sur retour          // On clique sur retour
139          $this->click("css=#sousform-consultation form a.retour");          $this->byCssSelector("#sousform-consultation form a.retour")->click();
140            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
141            $this->verifyNoErrors();
142          // On clique sur la consultation          // On clique sur la consultation
143          $this->click("link=5");          $this->byLinkText("Atelier du Patrimoine")->click();
144          // On vérifie le lien de l'édition a changé          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
145          $this->assertAttribute( "css=#sousform-consultation .portlet-list li:nth-child(3) a@href", "*spg/file.php*");          $this->verifyNoErrors();
146            // On vérifie le lien de l'édition
147            $this->assertRegExp('/^[\s\S]*spg\/file\.php[\s\S]*$/',$this->byCssSelector("#sousform-consultation .portlet-list li:nth-child(1) a")->attribute("href"));
148            //On vérifie que le lien de finalisation n'est pas apparu
149            try {
150                $el = $this->byCssSelector("#sousform-consultation .portlet-list li:nth-child(2) a span.finalise");
151                $this->fail('Cet élément ne devrait pas exister.');
152            } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
153                $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
154            }
155            //On vérifie que le lien de définalisation est apparu
156            $this->assertTrue($this->byCssSelector("#sousform-consultation .portlet-list li:nth-child(2) a span.definalise")->displayed());
157            //On définalise
158            $this->byCssSelector("#sousform-consultation .portlet-list li:nth-child(2) a")->click();
159            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
160            $this->verifyNoErrors();
161            // On vérifie le message de validation
162            $this->assertEquals('La definalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-consultation .message .text")->text());
163            // On vérifie que le lien de dé-finalisation a disparu
164            try {
165                $el = $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(2) a span.definalise");
166                $this->fail('Cet élément ne devrait pas consultation.');
167            } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
168                $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
169            }
170            //On vérifie que le lien de suppression est apparu
171            $this->assertTrue($this->byCssSelector("#sousform-consultation .portlet-list .delete-16")->displayed());
172            //On vérifie que l'action de modification n'est pas apparu
173            try {
174                $el = $this->byCssSelector("#sousform-consultation .edit-16");
175                $this->fail('Cet élément ne devrait pas exister.');
176            } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
177                $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
178            }
179            //On vérifie que le lien de finalisation est apparu
180            $this->assertTrue($this->byCssSelector("#sousform-consultation .portlet-list a span.finalise")->displayed());
181          // On se déconnecte de l'application          // On se déconnecte de l'application
182          $this->deconnect();          $this->logout();
183      }      }
184            
185      /**      /**
186       * Test de la finalisation du document lors de l'ajout d'une instruction par un       * Test de la finalisation du document d'une instruction par un instructeur pour
187       * instructeur pour le dossier PC0130551200001.       * le dossier PC 013055 12 00002P0.
188       */       */
189      function testFinalisationInstruction(){      function testFinalisationInstruction(){
190                    
191          // On se connecte en tant que "instr"          // On se connecte en tant que "instr"
192          $this->login("instr", "instr");          $this->login("instr", "instr");
193          // On clique sur le menu des encours          // On clique sur le menu des encours
194          $this->clickAndWait("link=mes encours");          $this->byLinkText("Mes Encours")->click();
195          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
196          $this->verifyNoErrors();          $this->verifyNoErrors();
197          // On clique sur le dossier PC0130551200001          // On clique sur le dossier PC0130551200001
198          $this->clickAndWait("link=PC0130551200002P0");          $this->byLinkText("PC 013055 12 00002P0")->click();
199          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
200          $this->verifyNoErrors();          $this->verifyNoErrors();
201          //Ralenti l'exécution du script pour permettre au JS de se charger          //Ralenti l'exécution du script pour permettre au JS de se charger
202          $this->setSpeed('120');          $this->byId("instruction")->click();
203          // On clique sur l'onglet instruction          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
204          $this->click("id=instruction");          $this->verifyNoErrors();
205          // On clique sur le + pour ajouter une instruction          // On clique sur le + pour ajouter une instruction
206          $this->click("css=#sousform-instruction .actions-max-1 a");          $this->byCssSelector("#sousform-instruction .actions-max-1 a")->click();
207          // On choisi l'événement          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
208          $this->select("id=evenement","value=62");          $this->verifyNoErrors();
209            // On choisi l'événement "adjoint [majoration]"
210            $this->select($this->byId("evenement"))->selectOptionByValue("62");
211          // On clique sur le bouton ajouter          // On clique sur le bouton ajouter
212          $this->click("//input[@value='Ajouter']");          $this->byXPath("//input[@value='Ajouter']")->click();
213            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
214            $this->verifyNoErrors();
215          // On vérifie que l'instruction s'est bien ajouté          // On vérifie que l'instruction s'est bien ajouté
216          $this->assertText("css=#sousform-instruction .message .text", 'regexp:.*Vos modifications ont bien été enregistrées.*');          $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-instruction .message .text")->text());
217          // On clique sur le bouton retour          // On clique sur le bouton retour
218          $this->click("css=#sousform-instruction form a.retour");          $this->byCssSelector("#sousform-instruction form a.retour")->click();
219            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
220            $this->verifyNoErrors();
221          // On clique sur l'instruction nouvellement créée          // On clique sur l'instruction nouvellement créée
222          $this->click("link=19");          $this->byLinkText("adjoint")->click();
223          // On dé-finalise le document en cliquant sur le lien Reprendre la rédaction          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
224          // du document          $this->verifyNoErrors();
         $this->click("css=#sousform-instruction .portlet-list li:nth-child(3) a");  
         // On vérifie le message de validation  
         $this->assertText("css=#sousform-instruction .message .text", 'La definalisation du document s\'est effectuée avec succès\.');  
         // On vérifie que le lien de dé-finalisation a disparu  
         $this->assertElementNotPresent("css=#sousform-instruction .portlet-list li:nth-child(3) a span.definalise");  
225          // On vérifie que le lien de finalisation est apparu          // On vérifie que le lien de finalisation est apparu
226          $this->assertElementPresent("css=#sousform-instruction .portlet-list li:nth-child(3) a span.finalise");          $this->assertTrue($this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(3) a span.finalise")->displayed());
227          $this->assertText("css=#sousform-instruction .portlet-list li:nth-child(3) a span.finalise","Finaliser le document");          $this->assertEquals("Finaliser le document", $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(3) a span.finalise")->text());
228          // On vérifie que le lien de l'édition a changé          // On vérifie que le lien de l'édition a changé
229          $this->assertAttribute( "css=#sousform-instruction .portlet-list li:nth-child(2) a@href", "*app/pdf_instruction.php*");          $this->assertRegExp('/^[\s\S]*app\/pdf_instruction\.php[\s\S]*$/',$this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(2) a")->attribute("href"));
230          // On finalise le document          // On finalise le document
231          $this->click("css=#sousform-instruction .portlet-list li:nth-child(3) a");          $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(3) a")->click();
232            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
233            $this->verifyNoErrors();
234          // On vérifie le message de validation          // On vérifie le message de validation
235          $this->assertText("css=#sousform-instruction .message .text", 'La finalisation du document s\'est effectuée avec succès\.');          $this->assertEquals('La finalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-instruction .message .text")->text());
236          // On vérifie que le lien de finalisation a disparu          // On vérifie que le lien de finalisation a disparu
237          $this->assertElementNotPresent("css=#sousform-instruction .portlet-list li:nth-child(3) a span.finalise");          try {
238                $el = $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(3) a span.finalise");
239                $this->fail('Cet élément ne devrait pas exister.');
240            } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
241                $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
242            }
243            // On vérifie que le lien de modification a disparu
244            try {
245                $el = $this->byCssSelector("#sousform-instruction .portlet-list edit-16");
246                $this->fail('Cet élément ne devrait pas exister.');
247            } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
248                $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
249            }
250          // On vérifie que le lien de dé-finalisation est apparu          // On vérifie que le lien de dé-finalisation est apparu
251          $this->assertElementPresent("css=#sousform-instruction .portlet-list li:nth-child(3) a span.definalise");          $this->assertTrue($this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(2) a span.definalise")->displayed());
252          $this->assertText("css=#sousform-instruction .portlet-list li:nth-child(3) a span.definalise","Reprendre la rédaction du document");          $this->assertEquals("Reprendre la rédaction du document", $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(2) a span.definalise")->text());
253          // On vérifie que le lien de l'édition a changé          // On vérifie que le lien de l'édition a changé
254          $this->assertAttribute( "css=#sousform-instruction .portlet-list li:nth-child(2) a@href", "*spg/file.php*");          $this->assertRegExp('/^[\s\S]*spg\/file\.php[\s\S]*$/',$this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(1) a")->attribute("href"));
255            // On dé-finalise le document en cliquant sur le lien Reprendre la rédaction
256            // du document
257            $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(2) a")->click();
258            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
259            $this->verifyNoErrors();
260            // On vérifie le message de validation
261            $this->assertEquals('La definalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-instruction .message .text")->text());
262            // On vérifie que le lien de dé-finalisation a disparu
263            try {
264                $el = $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(2) a span.definalise");
265                $this->fail('Cet élément ne devrait pas exister.');
266            } catch (PHPUnit_Extensions_Selenium2TestCase_WebDriverException $e) {
267                $this->assertEquals(PHPUnit_Extensions_Selenium2TestCase_WebDriverException::NoSuchElement, $e->getCode());
268            }
269            //On vérifie que le lien de modification est apparu
270            $this->assertTrue($this->byCssSelector("#sousform-instruction .portlet-list .edit-16")->displayed());
271          //On se déconnecte de l'application          //On se déconnecte de l'application
272          $this->deconnect();          $this->logout();
273      }      }
274            
275      /**      /**
276       * Test de la finalisation du compte rendu et de l'ordre du jour d'une commission       * Test de la finalisation du compte rendu et de l'ordre du jour d'une commission
277       * par la cellule suivi.       * par la cellule suivi sur le dossier PC 013055 12 00002P0.
278       */       */
279      function testFinalisationCommission(){      function testFinalisationCommission(){
280                    
281          // On se connecte en tant que "instr"          // On se connecte en tant que "instr"
282          $this->login("instr", "instr");          $this->login("instr", "instr");
283          // On clique sur le menu des encours          // On clique sur le menu des encours
284          $this->clickAndWait("link=mes encours");          $this->byLinkText("Mes Encours")->click();
285          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
286          $this->verifyNoErrors();          $this->verifyNoErrors();
287          // On clique sur le dossier PC0130551200001          // On clique sur le dossier PC0130551200001
288          $this->clickAndWait("link=AZ0130551200001P0");          $this->byLinkText("PC 013055 12 00002P0")->click();
289          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
290          $this->verifyNoErrors();          $this->verifyNoErrors();
         //Ralenti l'exécution du script pour permettre au JS de se charger  
         $this->setSpeed('120');  
291          // On clique sur l'onglet commission          // On clique sur l'onglet commission
292          $this->click("id=dossier_commission");          $this->byId("dossier_commission")->click();
293            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
294            $this->verifyNoErrors();
295          // On clique sur le + pour ajouter une commission          // On clique sur le + pour ajouter une commission
296          $this->click("css=#sousform-dossier_commission .actions-max-1 a");          $this->byCssSelector("#sousform-dossier_commission .actions-max-1 a")->click();
297          // On choisi le type de commission          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
298          $this->select("id=commission_type","value=1");          $this->verifyNoErrors();
299            // On choisi le type de commission "Commission Technique d'Urbanisme"
300            $this->select($this->byId("commission_type"))->selectOptionByValue("1");
301          // On clique sur le bouton ajouter          // On clique sur le bouton ajouter
302          $this->click("//input[@value='Ajouter']");          $this->byXPath("//input[@value='Ajouter']")->click();
303            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
304            $this->verifyNoErrors();
305          // On vérifie que l'instruction s'est bien ajouté          // On vérifie que l'instruction s'est bien ajouté
306          $this->assertText("css=#sousform-dossier_commission .message .text", 'regexp:.*Vos modifications ont bien été enregistrées.*');          $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-dossier_commission .message .text")->text());
307          //On se déconnecte de l'application          //On se déconnecte de l'application
308          $this->deconnect();          $this->deconnect();
309                    
# Line 203  class FinalisationDocuments extends Base Line 311  class FinalisationDocuments extends Base
311          // On se connecte en tant que "suivi"          // On se connecte en tant que "suivi"
312          $this->login("suivi", "suivi");          $this->login("suivi", "suivi");
313          // On clique sur le menu gestion          // On clique sur le menu gestion
314          $this->clickAndWait("link=gestion");          $this->byLinkText("Gestion")->click();
315            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
316            $this->verifyNoErrors();
317          // On clique sur la commission numéro 1          // On clique sur la commission numéro 1
318          $this->click("link=1");          $this->byLinkText("1")->click();
319            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
320            $this->verifyNoErrors();
321          //Mise à jour de la liste de diffusion          //Mise à jour de la liste de diffusion
322          $this->clickAndWait("css=.portlet-list li:nth-child(1) a");          $this->byCssSelector(".portlet-list li:nth-child(1) a")->click();
323          $this->type("id=listes_de_diffusion","[email protected]");          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
324          $this->clickAndWait("//input[@value='Modifier']");          $this->verifyNoErrors();
325            $this->byId("listes_de_diffusion")->clear();
326            $this->byId("listes_de_diffusion")->value("[email protected]");
327            $this->byXPath("//input[@value='Modifier']")->click();
328            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
329            $this->verifyNoErrors();
330          // On vérifie que la commission s'est bien mise à jour          // On vérifie que la commission s'est bien mise à jour
331          $this->assertText("css=.message .text", 'regexp:.*Vos modifications ont bien été enregistrées.*');          $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector(".message .text")->text());
332          //On clique sur le lien retour          //On clique sur le lien retour
333          $this->clickAndWait("link=Retour");          $this->byLinkText("Retour")->click();
334            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
335            $this->verifyNoErrors();
336          //On clique sur la diffusion de l'ordre du jour          //On clique sur la diffusion de l'ordre du jour
337          $this->click("css=.portlet-list li:nth-child(3) a");          $this->byCssSelector(".portlet-list li:nth-child(3) a")->click();
338            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
339            $this->verifyNoErrors();
340            //On vérifie que l'ordre du jour s'est bien envoyé
341            $this->assertRegExp('/.*La diffusion de l\'ordre du jour s\'est effectuée avec succès.*/', $this->byCssSelector(".message span.text")->text());
342          // On vérifie que le lien de l'édition a changé          // On vérifie que le lien de l'édition a changé
343          $this->assertAttribute( "css=.portlet-list li:nth-child(6) a@href", "*spg/file.php*");          $this->assertRegExp('/^[\s\S]*spg\/file\.php[\s\S]*$/',$this->byCssSelector(".portlet-list li:nth-child(6) a")->attribute("href"));
344          // On clique sur la diffusion du compte rendu          // On clique sur la diffusion du compte rendu
345          $this->click("css=.portlet-list li:nth-child(4) a");          $this->byCssSelector(".portlet-list li:nth-child(4) a")->click();
346            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
347            $this->verifyNoErrors();
348            //On vérifie que le compte rendu s'est bien envoyé
349            $this->assertRegExp('/.*La diffusion du compte-rendu s\'est effectuée avec succès.*/', $this->byCssSelector(".message span.text")->text());
350          // On vérifie que le lien de l'édition a changé          // On vérifie que le lien de l'édition a changé
351          $this->assertAttribute( "css=.portlet-list li:nth-child(7) a@href", "*spg/file.php*");          $this->assertRegExp('/^[\s\S]*spg\/file\.php[\s\S]*$/',$this->byCssSelector(".portlet-list li:nth-child(7) a")->attribute("href"));
352          //On se déconnecte de l'application          //On se déconnecte de l'application
353          $this->deconnect();          $this->logout();
354      }      }
355  }  }

Legend:
Removed from v.1957  
changed lines
  Added in v.2603

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26