/[openfoncier]/branches/3.14.x/tests/testGuichetUnique.php
ViewVC logotype

Diff of /branches/3.14.x/tests/testGuichetUnique.php

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

revision 2313 by softime, Wed Sep 18 15:31:34 2013 UTC revision 3235 by vpihour, Tue Jan 6 11:36:31 2015 UTC
# Line 14  require_once "base.php"; Line 14  require_once "base.php";
14   */   */
15  class GuichetUnique extends Base2TestCase {  class GuichetUnique extends Base2TestCase {
16    
17        // Liste des utilisateurs
18        var $listUtlisateurs = array(
19                array(
20                    "login" => "guichet",
21                    "mdp" => "guichet"
22                ),
23                array(
24                    "login" => "adminfonct",
25                    "mdp" => "adminfonct"
26                ),
27            );
28    
29        /**
30         * Ce test vise uniquement à vérifier que les écrans correspondant à chaque
31         * entrée de menu ne génère pas une erreur de base de données
32         */
33        // Fonction privé
34        private function ouvertureMenu($utilisateur) {
35            // On se connecte
36            $this->login($utilisateur["login"], $utilisateur["mdp"]);
37            // Ouvre le menu
38            $this->openMenu("Guichet Unique", $utilisateur);
39            // On vérifie le menu "Nouveau Dossier"
40            $this->byLinkText("Nouveau Dossier")->click();
41            $this->assertContains("Guichet Unique > Nouvelle Demande > Nouveau Dossier",
42                $this->byId("title")->text());
43            $this->verifyNoErrors();
44            // On vérifie le menu "Dossier En Cours"
45            $this->byLinkText("Dossier En Cours")->click();
46            $this->assertContains("Guichet Unique > Nouvelle Demande > Dossier En Cours",
47                $this->byId("title")->text());
48            $this->verifyNoErrors();
49            // On vérifie le menu "Autre Dossier"
50            $this->byLinkText("Autre Dossier")->click();
51            $this->assertContains("Guichet Unique > Nouvelle Demande > Autre Dossier",
52                $this->byId("title")->text());
53            $this->verifyNoErrors();
54            // On vérifie le menu "Récépissé"
55            $this->byLinkText("Récépissé")->click();
56            $this->assertContains("Guichet Unique > Nouvelle Demande > Récépissé",
57                $this->byId("title")->text());
58            $this->verifyNoErrors();
59            // On vérifie le menu "Pétitionnaire Fréquent"
60            $this->byLinkText("Pétitionnaire Fréquent")->click();
61            $this->assertContains("Guichet Unique > Nouvelle Demande > Pétitionnaire Fréquent",
62                $this->byId("title")->text());
63            $this->verifyNoErrors();
64            // On vérifie le menu "Registre"
65            $this->byLinkText("Registre")->click();
66            $this->assertContains("Guichet Unique > Affichage Réglementaire > Registre",
67                $this->byId("title")->text());
68            $this->verifyNoErrors();
69            // On vérifie le menu "Attestation"
70            $this->byLinkText("Attestation")->click();
71            $this->assertContains("Guichet Unique > Affichage Réglementaire > Attestation",
72                $this->byId("title")->text());
73            $this->verifyNoErrors();
74            // On se déconnecte
75            $this->deconnect();
76        }
77        // Fonction public
78        public function test01OuvertureMenu() {
79            // Récupération des utilisateurs
80            $utilisateurs = $this->listUtlisateurs;
81            // Pour chaque utilisateur on lance le test
82            foreach ($utilisateurs as $utilisateur) {
83                //
84                $this->ouvertureMenu($utilisateur);
85            }
86            // On vérifie la déconnexion
87            $this->verifyDeconnect();
88        }
89    
90      /**      /**
91       * Test l'ajout d'une demande       * Test l'ajout d'une demande
92       */       */
93      public function testAjoutDemandeInitial() {      // Fonction privé
94        private function ajoutDemandeInitial($utilisateur) {
95    
96          // On se connecte à l'application          // On se connecte à l'application
97          $this->login("guichet", "guichet");          $this->login($utilisateur["login"], $utilisateur["mdp"]);
98            // Ouvre le menu
99            $this->openMenu("Guichet Unique", $utilisateur);
100          // On clique sur le menu "Nouveau Dossier"          // On clique sur le menu "Nouveau Dossier"
101          $this->byLinkText("Nouveau Dossier")->click();          $this->byLinkText("Nouveau Dossier")->click();
102          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
# Line 55  class GuichetUnique extends Base2TestCas Line 131  class GuichetUnique extends Base2TestCas
131          $this->byId("code_postal")->value("13012");          $this->byId("code_postal")->value("13012");
132          // On remplit le champ          // On remplit le champ
133          $this->byId("telephone_fixe")->value("0404040404");          $this->byId("telephone_fixe")->value("0404040404");
134            // On remplit le champ
135            $this->byId("fax")->value("0405040404");
136          // On clique sur ajouter          // On clique sur ajouter
137          $this->byCssSelector("div#sformulaire form div.formControls input.om-button")->click();sleep(1);          $this->byCssSelector("div#sformulaire form div.formControls input.om-button")->click();sleep(1);
138          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
# Line 70  class GuichetUnique extends Base2TestCas Line 148  class GuichetUnique extends Base2TestCas
148          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
149          $this->verifynoerrors();          $this->verifynoerrors();
150          // On vérifie le message          // On vérifie le message
151          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 13 00001[\s\S]*$/",$this->byCssSelector(".message")->text());          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°[\s\S]*$/",$this->byCssSelector(".message")->text());
152            // Récupération du numéro de dossier
153            preg_match('/(PC)[0-9 ]*(P0)/', $this->byCssSelector(".message .text")->text(), $matches);
154            $dossier_libelle = $matches[0];
155            $dossier = str_replace(' ', '', $dossier_libelle);
156            $dossier_dir = substr_replace($dossier, '.', -2, -3);
157          // On clique          // On clique
158          $this->byCssSelector("a.lien")->click();sleep(5);          $this->byCssSelector("a.lien")->click();sleep(5);
159          // Liste les fenêtres          // Liste les fenêtres
# Line 90  class GuichetUnique extends Base2TestCas Line 173  class GuichetUnique extends Base2TestCas
173          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
174          $this->verifynoerrors();          $this->verifynoerrors();
175          // On vérifie que le répertoire s'est crée          // On vérifie que le répertoire s'est crée
176          $this->assertTrue(file_exists("../trs/numerisation/Todo/PC0130551300001.P0"));          $this->assertTrue(file_exists("../trs/numerisation/Todo/".$dossier_dir));
177          // On se déconnecte          // On se déconnecte
178          $this->logout();          $this->deconnect();
179      }      }
180            // Fonction public
181        public function test02AjoutDemandeInitial() {
182            // Récupération des utilisateurs
183            $utilisateurs = $this->listUtlisateurs;
184            // Pour chaque utilisateur on lance le test
185            foreach ($utilisateurs as $utilisateur) {
186                //
187                $this->ajoutDemandeInitial($utilisateur);
188            }
189            // On vérifie la déconnexion
190            $this->verifyDeconnect();
191        }
192    
193      /**      /**
194       * Test l'ajout d'une demande avec un instructeur       * Test l'ajout d'une demande et de création d'une nouvelle sequence
195       */       */
196      public function testAjoutDemandeInitialInstructeur() {      public function testAjoutDemandeNouvelleSequence() {
197    
198          // On se connecte à l'application          // On se connecte à l'application
199          $this->login("instr", "instr");          $this->login("guichet", "guichet");
200          // On clique sur le menu "Nouveau Dossier"          // On clique sur le menu "Nouveau Dossier"
201          $this->byLinkText("Cliquer ici pour saisir une nouvelle demande concernant le dépôt d'un nouveau dossier")->click();          $this->byLinkText("Nouveau Dossier")->click();
202          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
203          $this->verifynoerrors();          $this->verifynoerrors();
204          // On vérifie le nom de l'onglet          // On vérifie le nom de l'onglet
# Line 112  class GuichetUnique extends Base2TestCas Line 207  class GuichetUnique extends Base2TestCas
207          $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByLabel("Permis de construire pour une maison individuelle et / ou ses annexes");          $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByLabel("Permis de construire pour une maison individuelle et / ou ses annexes");
208          // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"          // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"
209          $this->select($this->byId("demande_type"))->selectOptionByLabel("Dépôt Initial");          $this->select($this->byId("demande_type"))->selectOptionByLabel("Dépôt Initial");
210            // Modification de la date
211            $this->byId("date_demande")->clear();
212            $this->acceptAlert();
213            $this->byId("date_demande")->value("10/10/2014");
214          // On clique pour ajouter un pétitionnaire principale          // On clique pour ajouter un pétitionnaire principale
215          $this->byId("add_petitionnaire_principal")->click();          $this->byId("add_petitionnaire_principal")->click();
216          // On remplit le champ          // On remplit le champ
# Line 141  class GuichetUnique extends Base2TestCas Line 240  class GuichetUnique extends Base2TestCas
240          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
241          $this->verifynoerrors();          $this->verifynoerrors();
242          // On vérifie le message          // On vérifie le message
243          $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("form div.message")->text());          $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#sousform-petitionnaire .message")->text());
244          // On clique sur le bouton retour          // On clique sur le bouton retour
245          $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);          $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);
246          // On vérifie que le text est présent          // On vérifie que le text est présent
# Line 151  class GuichetUnique extends Base2TestCas Line 250  class GuichetUnique extends Base2TestCas
250          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
251          $this->verifynoerrors();          $this->verifynoerrors();
252          // On vérifie le message          // On vérifie le message
253          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 13 00002[\s\S]*$/",$this->byCssSelector(".message")->text());          $this->assertContains("Création du dossier d'autorisation n°",$this->byCssSelector(".message .text")->text());
254          // On clique          // Récupération du numéro de dossier
255          $this->byCssSelector("a.lien")->click();sleep(5);          preg_match('/(PC)[0-9 ]*(P0)/', $this->byCssSelector(".message .text")->text(), $dossier);
256          // Liste les fenêtres          $dossier = $dossier[0];
         $windows = $this->windowHandles();  
         // Change la fenêtre  
         $this->window($windows[1]);  
         // On vérifie qu'il n'y ait pas d'erreur  
         $this->verifynoerrors();  
         // On vérifie que le text est présent  
         $this->assertRegExp("/^[\s\S]*RECEPISSE DE DEPOT[\s\S]*$/",$this->source());  
         // On ferme la fenêtre  
         $this->closeWindow();  
         // On change le focus de la fenêtre  
         $this->window($windows[0]);  
         // On clique sur le bouton retour  
         $this->byLinkText("Retour")->click();  
         // On vérifie qu'il n'y ait pas d'erreur  
         $this->verifynoerrors();  
         // On vérifie que le répertoire s'est crée  
         $this->assertTrue(file_exists("../trs/numerisation/Todo/PC0130551300002.P0"));  
257          // On se déconnecte          // On se déconnecte
258          $this->logout();          $this->logout();
259      }      }
# Line 181  class GuichetUnique extends Base2TestCas Line 263  class GuichetUnique extends Base2TestCas
263       */       */
264      public function testAjoutDemandeModification() {      public function testAjoutDemandeModification() {
265    
266            // Année en cours
267            $annee = date("y");
268    
269          /// On se connecte à l'application en tant qu'instructeur          /// On se connecte à l'application en tant qu'instructeur
270          // pour ajouter une instruction arrêté sur le dossier crée          // pour ajouter une instruction arrêté sur le dossier crée
271          $this->login("instr", "instr");          $this->login("instr", "instr");
# Line 189  class GuichetUnique extends Base2TestCas Line 274  class GuichetUnique extends Base2TestCas
274          // 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é
275          $this->verifyNoErrors();          $this->verifyNoErrors();
276          // On clique sur le dossier          // On clique sur le dossier
277          $this->byXPath("//div[@id='tab-dossier_instruction']/table/tbody/tr[8]/td/a/span")->click();          $this->byId("action-tab-dossier_instruction-left-consulter-PC013055".$annee."00001P0")->click();
278          // 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é
279          $this->verifyNoErrors();          $this->verifyNoErrors();
280          // On clique sur l'onglet instruction          // On clique sur l'onglet instruction
# Line 199  class GuichetUnique extends Base2TestCas Line 284  class GuichetUnique extends Base2TestCas
284          // 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é
285          $this->verifyNoErrors();          $this->verifyNoErrors();
286          // On choisi l'événement          // On choisi l'événement
287          $this->select($this->byId("evenement"))->selectOptionByLabel("accepter un dossier sans réserve [acceptation]");          $this->select($this->byId("evenement"))->selectOptionByValue(81);
288          // On clique sur le bouton ajouter          // On clique sur le bouton ajouter
289          $this->byXPath("//input[@value='Ajouter']")->click();          $this->byXPath("//input[@value='Ajouter']")->click();
290          // On vérifie que l'instruction s'est bien ajouté          // On vérifie que l'instruction s'est bien ajouté
# Line 223  class GuichetUnique extends Base2TestCas Line 308  class GuichetUnique extends Base2TestCas
308          // On se connecte en tant que guichet unique          // On se connecte en tant que guichet unique
309          $this->login("guichet", "guichet");          $this->login("guichet", "guichet");
310          // On clique sur le menu "Nouveau Dossier"          // On clique sur le menu "Nouveau Dossier"
311          $this->byLinkText("Dossier Existant")->click();          $this->byLinkText("Autre Dossier")->click();
         // On vérifie qu'il n'y ait pas d'erreur  
         $this->verifynoerrors();  
         // On vérifie le nom de l'onglet  
         $this->assertEquals("Demande", $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());  
         // On clique pour ajouter une demande au dossier existant  
         $this->byXPath("//div[@id='tab-demande_dossier_existant']/table/tbody/tr[8]/td/a/span")->click();  
         // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché  
         $this->verifyNoErrors();  
         // Vérifie le fil d'Ariane  
         $this->assertEquals("Guichet Unique > Nouvelle Demande > Dossier Existant > PC 013055 13 00001P0", $this->byXPath("//div[3]/div/h2")->text());  
         // On choisis le type de demande  
         $this->select($this->byId("demande_type"))->selectOptionByLabel("Demande de modification");  
         // On clique sur ajouter  
         $this->byXPath("//input[@value='Ajouter']")->click();  
         // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché  
         $this->verifyNoErrors();  
         // On vérifie le message  
         $this->assertRegExp("/^[\s\S]*Création du dossier d'instruction n°PC 013055 13 00001M01[\s\S]*$/",$this->byCssSelector("BODY")->text());  
         // On vérifie que le répertoire s'est crée  
         $this->assertTrue(file_exists("../trs/numerisation/Todo/PC0130551300001.M01"));  
         // On se déconnecte  
         $this->logout();  
           
     }  
   
     /**  
      * Test l'ajout d'une demande de modification par un instructeur  
      */  
     public function testAjoutDemandeModificationInstructeur() {  
   
         /// On se connecte à l'application en tant qu'instructeur  
         // pour ajouter une instruction arrêté sur le dossier crée  
         $this->login("instr", "instr");  
         // On clique sur le menu  
         $this->byLinkText("Recherche")->click();  
         // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché  
         $this->verifyNoErrors();  
         // On clique sur le dossier  
         $this->byXPath("//div[@id='tab-dossier_instruction']/table/tbody/tr[8]/td/a/span")->click();  
         // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché  
         $this->verifyNoErrors();  
         // On clique sur l'onglet instruction  
         $this->byId("instruction")->click();  
         // On clique sur le + pour ajouter une instruction  
         $this->byCssSelector("#sousform-instruction .actions-max-1 a")->click();  
         // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché  
         $this->verifyNoErrors();  
         // On choisi l'événement  
         $this->select($this->byId("evenement"))->selectOptionByLabel("accepter un dossier sans réserve [acceptation]");  
         // On clique sur le bouton ajouter  
         $this->byXPath("//input[@value='Ajouter']")->click();  
         // On vérifie que l'instruction s'est bien ajouté  
         $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-instruction .message .text")->text());  
         // On clique sur le bouton retour  
         $this->byCssSelector("#sousform-instruction form a.retour")->click();  
         // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché  
         $this->verifyNoErrors();  
         // On clique sur l'onglet DI  
         $this->byId("main")->click();  
         // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché  
         $this->verifyNoErrors();  
         // on rafraichis la page  
         $this->refresh();  
         // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché  
         $this->verifyNoErrors();  
         // On vérifie l'état du dossier  
         $this->assertEquals("dossier accepter", $this->byId('etat')->text());  
         // On clique sur le menu  
         $this->byLinkText("Guichet Unique")->click();  
         $this->byLinkText("Dossier Existant")->click();  
312          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
313          $this->verifynoerrors();          $this->verifynoerrors();
314          // On vérifie le nom de l'onglet          // On vérifie le nom de l'onglet
315          $this->assertEquals("Demande", $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());          $this->assertEquals("Demande", $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());
316          // On clique pour ajouter une demande au dossier existant          // On clique pour ajouter une demande au dossier existant
317          $this->byXPath("//div[@id='tab-demande_dossier_existant']/table/tbody/tr[8]/td/a/span")->click();          $this->byId("action-tab-demande_autre_dossier-left-consulter-PC013055".$annee."00001P0")->click();
318          // 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é
319          $this->verifyNoErrors();          $this->verifyNoErrors();
320          // Vérifie le fil d'Ariane          // Vérifie le fil d'Ariane
321          $this->assertEquals("Guichet Unique > Nouvelle Demande > Dossier Existant > PC 013055 13 00001M01", $this->byXPath("//div[3]/div/h2")->text());          $this->assertContains("Guichet Unique > Nouvelle Demande > Autre Dossier > PC 013055", $this->byXPath("//div[3]/div/h2")->text());
322          // On choisis le type de demande          // On choisis le type de demande
323          $this->select($this->byId("demande_type"))->selectOptionByLabel("Demande de modification");          $this->select($this->byId("demande_type"))->selectOptionByLabel("Demande de modification");
324          // On clique sur ajouter          // On clique sur ajouter
# Line 311  class GuichetUnique extends Base2TestCas Line 326  class GuichetUnique extends Base2TestCas
326          // 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é
327          $this->verifyNoErrors();          $this->verifyNoErrors();
328          // On vérifie le message          // On vérifie le message
329          $this->assertRegExp("/^[\s\S]*Création du dossier d'instruction n°PC 013055 13 00001M02[\s\S]*$/",$this->byCssSelector("BODY")->text());          $this->assertRegExp("/^[\s\S]*Création du dossier d'instruction n°[\s\S]*$/", $this->byCssSelector("BODY")->text());
330          // On vérifie que le répertoire s'est crée          // On vérifie que le répertoire s'est crée
331          $this->assertTrue(file_exists("../trs/numerisation/Todo/PC0130551300001.M02"));          $this->assertTrue(file_exists("../trs/numerisation/Todo/PC013055".$annee."00001.M01"));
332          // On se déconnecte          // On se déconnecte
333          $this->logout();          $this->logout();
334                    
# Line 518  class GuichetUnique extends Base2TestCas Line 533  class GuichetUnique extends Base2TestCas
533          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
534          $this->verifynoerrors();          $this->verifynoerrors();
535          // On vérifie le message          // On vérifie le message
536          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 13 00003[\s\S]*$/",$this->byCssSelector(".message")->text());          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°[\s\S]*$/",$this->byCssSelector(".message")->text());
537          // On clique          // On clique
538          $this->byCssSelector("a.lien")->click();sleep(5);          $this->byCssSelector("a.lien")->click();sleep(5);
539          // Liste les fenêtres          // Liste les fenêtres
# Line 619  class GuichetUnique extends Base2TestCas Line 634  class GuichetUnique extends Base2TestCas
634          $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByLabel("Permis de construire pour une maison individuelle et / ou ses annexes");          $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByLabel("Permis de construire pour une maison individuelle et / ou ses annexes");
635          // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"          // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"
636          $this->select($this->byId("demande_type"))->selectOptionByLabel("Dépôt Initial");          $this->select($this->byId("demande_type"))->selectOptionByLabel("Dépôt Initial");
637            // XXX Problème de javascript seulement dans cette fonction
638            // Les alerts ne passent pas lorsque le focus n'est pas sur le
639            // navigateur
640          //On saisie des références cadastrales inccorect          //On saisie des références cadastrales inccorect
641          $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->value("aa");          // $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->value("aa");
642          // On change le focus pour faire apparaitre le message          // // On change le focus pour faire apparaitre le message
643          $this->byId('date_demande')->value(date('d/m/Y'));          // $this->byId('date_demande')->value(date('d/m/Y'));
644          sleep(5);          // sleep(5);
645          // Message d'erreur concernant le numéro de quartier          // // Message d'erreur concernant le numéro de quartier
646          $this->assertEquals("Vous ne devez saisir que des nombres entiers", $this->alertText());          // $this->assertEquals("Vous ne devez saisir que des nombres entiers", $this->alertText());
647          $this->acceptAlert();          // $this->acceptAlert();
648          $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->value("11");          // $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->value("11");
649          // On change le focus pour faire apparaitre le message          // // On change le focus pour faire apparaitre le message
650          $this->byId('date_demande')->value(date('d/m/Y'));          // $this->byId('date_demande')->value(date('d/m/Y'));
651          sleep(5);          // sleep(5);
652          // Message d'erreur concernant la section          // // Message d'erreur concernant la section
653          $this->assertEquals("Vous ne devez saisir que des lettres dans ce champs.", $this->alertText());          // $this->assertEquals("Vous ne devez saisir que des lettres dans ce champs.", $this->alertText());
654          $this->acceptAlert();          // $this->acceptAlert();
655          $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->value("bb");          // $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->value("bb");
656          // On change le focus pour faire apparaitre le message          // // On change le focus pour faire apparaitre le message
657          $this->byId('date_demande')->value(date('d/m/Y'));          // $this->byId('date_demande')->value(date('d/m/Y'));
658          sleep(5);          // sleep(5);
659          // Message d'erreur concernant le numéro de parcelle          // // Message d'erreur concernant le numéro de parcelle
660          $this->assertEquals("Vous ne devez saisir que des nombres entiers", $this->alertText());          // $this->assertEquals("Vous ne devez saisir que des nombres entiers", $this->alertText());
661          $this->acceptAlert();          // $this->acceptAlert();
662          //On saisie les références cadastrales          //On saisie les références cadastrales
663          $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->value("1");          // $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->value("1");
664          $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->value("dc");          // $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->value("dc");
665          $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->value("15");          // $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->value("15");
666            // XXX Renplace les valeurs juste au dessus qui devraient se mettre au
667            // bon format automatiquement grâce au javascript
668            $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->value("001");
669            $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->value("DC");
670            $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->value("0015");
671          //On clique sur le bouton de recherche "Cadastrale = > Adresse"          //On clique sur le bouton de recherche "Cadastrale = > Adresse"
672          $this->byId("cad-adr-them")->click();          $this->byId("cad-adr-them")->click();
673          sleep(1);          sleep(1);
674          // On vérifie que le format des champs est mise à jour automatiquement          // On vérifie que le format des champs est mise à jour automatiquement
675          $this->assertEquals("001", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->value());          $this->assertEquals("001", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->attribute('value'));
676          $this->assertEquals("DC", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->value());          $this->assertEquals("DC", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->attribute('value'));
677          $this->assertEquals("0015", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->value());          $this->assertEquals("0015", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->attribute('value'));
678          //On verifie l'adresse          //On verifie l'adresse
679          $this->assertEquals("0075", $this->byId("terrain_adresse_voie_numero")->value());          $this->assertEquals("0075", $this->byId("terrain_adresse_voie_numero")->attribute('value'));
680          $this->assertEquals("TRA DE LA DOMINIQUE", $this->byId("terrain_adresse_voie")->value());          $this->assertEquals("TRA DE LA DOMINIQUE", $this->byId("terrain_adresse_voie")->attribute('value'));
681          $this->assertEquals("13011", $this->byId("terrain_adresse_code_postal")->value());          $this->assertEquals("13011", $this->byId("terrain_adresse_code_postal")->attribute('value'));
682          $this->assertEquals("MARSEILLE", $this->byId("terrain_adresse_localite")->value());          $this->assertEquals("MARSEILLE", $this->byId("terrain_adresse_localite")->attribute('value'));
683          // On valide le formulaire          // On valide le formulaire
684          $this->byXPath("//input[@value='Ajouter']")->click();          $this->byXPath("//input[@value='Ajouter']")->click();
685          // On vérifie le message d'erreur          // On vérifie le message d'erreur
686          $this->assertRegExp("/^[\s\S]*SAISIE NON ENREGISTRÉE[\s\S]*$/", $this->byCssSelector(".message")->text());          $this->assertRegExp("/^[\s\S]*SAISIE NON ENREGISTRÉE[\s\S]*$/", $this->byCssSelector(".message")->text());
687          sleep(1);          sleep(1);
688          // On vérifie que les références cadastrales soient toujours affiché          // On vérifie que les références cadastrales soient toujours affiché
689          $this->assertEquals("001", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->value());          $this->assertEquals("001", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->attribute('value'));
690          $this->assertEquals("DC", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->value());          $this->assertEquals("DC", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->attribute('value'));
691          $this->assertEquals("0015", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->value());                  $this->assertEquals("0015", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->attribute('value'));        
692          //On saisie les références cadastrales          //On saisie les références cadastrales
693          $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->clear();          $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->clear();
694          $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->clear();          $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->clear();
# Line 714  class GuichetUnique extends Base2TestCas Line 737  class GuichetUnique extends Base2TestCas
737          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
738          $this->verifynoerrors();          $this->verifynoerrors();
739          // On vérifie le message          // On vérifie le message
740          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 13 00004[\s\S]*$/",$this->byCssSelector(".message")->text());          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°[\s\S]*$/",$this->byCssSelector(".message")->text());
741            // Récupération du numéro de dossier
742            preg_match('/(PC)[0-9 ]*(P0)/', $this->byCssSelector(".message .text")->text(), $dossier);
743            $dossier_libelle = $dossier[0];
744            $dossier = str_replace(' ', '', $dossier_libelle);
745            $dossier_dir = substr_replace($dossier, '.', -2, -3);
746          // On clique          // On clique
747          $this->byCssSelector("a.lien")->click();sleep(5);          $this->byCssSelector("a.lien")->click();sleep(5);
748          // Liste les fenêtres          // Liste les fenêtres
# Line 734  class GuichetUnique extends Base2TestCas Line 762  class GuichetUnique extends Base2TestCas
762          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
763          $this->verifynoerrors();          $this->verifynoerrors();
764          // On vérifie que le répertoire s'est crée          // On vérifie que le répertoire s'est crée
765          $this->assertTrue(file_exists("../trs/numerisation/Todo/PC0130551300004.P0"));          $this->assertTrue(file_exists("../trs/numerisation/Todo/".$dossier_dir));
766          // On se déconnecte          // On se déconnecte
767          $this->logout();          $this->logout();
768      }      }
# Line 858  class GuichetUnique extends Base2TestCas Line 886  class GuichetUnique extends Base2TestCas
886      }      }
887    
888      /**      /**
889         * Vérifie le menu "Autre Dossier" et "Dossier En Cours"
890         */
891        public function test_autre_dossier() {
892    
893            // On se connecte en tant que "guichet"
894            $this->login("guichet", "guichet");
895            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
896            $this->verifyNoErrors();
897            // On clique sur "Autre Dossier"
898            $this->byLinkText("Autre Dossier")->click();
899            // On vérifie qu'il n'y ait pas d'erreur
900            $this->verifynoerrors();
901            // On vérifie que le dossier qui ne doit pas être dans
902            // "Dossier En Cours" sont ici
903            $this->assertRegExp("/^[\s\S]*PC 013055 ".date("y")." 00001P0[\s\S]*$/",
904                $this->byCssSelector("#tab-demande_autre_dossier .tab-tab")->text());
905            // On clique sur "Dossier En Cours"
906            $this->byLinkText("Dossier En Cours")->click();
907            // On vérifie qu'il n'y ait pas d'erreur
908            $this->verifynoerrors();
909            // On vérifie que le dossier précédement contrôlé n'ait pas
910            // affiché
911            $this->assertNotContains("PC 013055 13 00001P0",
912                $this->byCssSelector("#tab-demande_dossier_encours .tab-tab")->text());
913            // On se déconnecte
914            $this->logout();
915        }
916    
917        /**
918       * Désactive l'option sig avec la valeur nécessaire       * Désactive l'option sig avec la valeur nécessaire
919       */       */
920      public function test_desactive_option_sig() {      public function test_desactive_option_sig() {
# Line 885  class GuichetUnique extends Base2TestCas Line 942  class GuichetUnique extends Base2TestCas
942          // On change la valeur par "aucun"          // On change la valeur par "aucun"
943          $this->byId('valeur')->clear();          $this->byId('valeur')->clear();
944          $this->byId('valeur')->value('aucun');          $this->byId('valeur')->value('aucun');
945          // On valide la modification          // On valide la modification
946          $this->byCssSelector("input[value='Modifier']")->click();          $this->byCssSelector("input[value='Modifier']")->click();
947          // On vérifie le message de validation          // On vérifie le message de validation
948          $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#tabs-1 .message")->text());          $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#tabs-1 .message")->text());
# Line 898  class GuichetUnique extends Base2TestCas Line 955  class GuichetUnique extends Base2TestCas
955      }      }
956  }  }
957    
958  ?>  ?>

Legend:
Removed from v.2313  
changed lines
  Added in v.3235

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26