/[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 2601 by softime, Tue Dec 10 17:13:14 2013 UTC revision 2676 by softime, Tue Jan 7 17:54:58 2014 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 70  class GuichetUnique extends Base2TestCas Line 146  class GuichetUnique extends Base2TestCas
146          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
147          $this->verifynoerrors();          $this->verifynoerrors();
148          // On vérifie le message          // On vérifie le message
149          $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());
150            // Récupération du numéro de dossier
151            preg_match('/(PC)[0-9 ]*(P0)/', $this->byCssSelector(".message .text")->text(), $matches);
152            $dossier_libelle = $matches[0];
153            $dossier = str_replace(' ', '', $dossier_libelle);
154            $dossier_dir = substr_replace($dossier, '.', -2, -3);
155          // On clique          // On clique
156          $this->byCssSelector("a.lien")->click();sleep(5);          $this->byCssSelector("a.lien")->click();sleep(5);
157          // Liste les fenêtres          // Liste les fenêtres
# Line 90  class GuichetUnique extends Base2TestCas Line 171  class GuichetUnique extends Base2TestCas
171          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
172          $this->verifynoerrors();          $this->verifynoerrors();
173          // On vérifie que le répertoire s'est crée          // On vérifie que le répertoire s'est crée
174          $this->assertTrue(file_exists("../trs/numerisation/Todo/PC0130551300001.P0"));          $this->assertTrue(file_exists("../trs/numerisation/Todo/".$dossier_dir));
175          // On se déconnecte          // On se déconnecte
176          $this->logout();          $this->deconnect();
177        }
178        // Fonction public
179        public function test02AjoutDemandeInitial() {
180            // Récupération des utilisateurs
181            $utilisateurs = $this->listUtlisateurs;
182            // Pour chaque utilisateur on lance le test
183            foreach ($utilisateurs as $utilisateur) {
184                //
185                $this->ajoutDemandeInitial($utilisateur);
186            }
187            // On vérifie la déconnexion
188            $this->verifyDeconnect();
189      }      }
190    
191      /**      /**
# Line 155  class GuichetUnique extends Base2TestCas Line 248  class GuichetUnique extends Base2TestCas
248          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
249          $this->verifynoerrors();          $this->verifynoerrors();
250          // On vérifie le message          // On vérifie le message
251          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 14 00001[\s\S]*$/",$this->byCssSelector(".message")->text());          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 14 00003[\s\S]*$/",$this->byCssSelector(".message")->text());
252          // On se déconnecte          // On se déconnecte
253          $this->logout();          $this->logout();
254      }      }
# Line 165  class GuichetUnique extends Base2TestCas Line 258  class GuichetUnique extends Base2TestCas
258       */       */
259      public function testAjoutDemandeModification() {      public function testAjoutDemandeModification() {
260    
261            // Instancie la timezone
262            date_default_timezone_set('Europe/Paris');
263    
264            // Année en cours
265            $annee = date("y");
266    
267          /// On se connecte à l'application en tant qu'instructeur          /// On se connecte à l'application en tant qu'instructeur
268          // pour ajouter une instruction arrêté sur le dossier crée          // pour ajouter une instruction arrêté sur le dossier crée
269          $this->login("instr", "instr");          $this->login("instr", "instr");
# Line 173  class GuichetUnique extends Base2TestCas Line 272  class GuichetUnique extends Base2TestCas
272          // 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é
273          $this->verifyNoErrors();          $this->verifyNoErrors();
274          // On clique sur le dossier          // On clique sur le dossier
275          $this->byId("action-tab-dossier_instruction-left-consulter-PC0130551300001P0")->click();          $this->byId("action-tab-dossier_instruction-left-consulter-PC013055".$annee."00001P0")->click();
276          // 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é
277          $this->verifyNoErrors();          $this->verifyNoErrors();
278          // On clique sur l'onglet instruction          // On clique sur l'onglet instruction
# Line 213  class GuichetUnique extends Base2TestCas Line 312  class GuichetUnique extends Base2TestCas
312          // On vérifie le nom de l'onglet          // On vérifie le nom de l'onglet
313          $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());
314          // On clique pour ajouter une demande au dossier existant          // On clique pour ajouter une demande au dossier existant
315          $this->byId("action-tab-demande_autre_dossier-left-consulter-PC0130551300001P0")->click();          $this->byId("action-tab-demande_autre_dossier-left-consulter-PC013055".$annee."00001P0")->click();
316          // 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é
317          $this->verifyNoErrors();          $this->verifyNoErrors();
318          // Vérifie le fil d'Ariane          // Vérifie le fil d'Ariane
319          $this->assertEquals("Guichet Unique > Nouvelle Demande > Autre Dossier > PC 013055 13 00001P0", $this->byXPath("//div[3]/div/h2")->text());          $this->assertContains("Guichet Unique > Nouvelle Demande > Autre Dossier > PC 013055", $this->byXPath("//div[3]/div/h2")->text());
320          // On choisis le type de demande          // On choisis le type de demande
321          $this->select($this->byId("demande_type"))->selectOptionByLabel("Demande de modification");          $this->select($this->byId("demande_type"))->selectOptionByLabel("Demande de modification");
322          // On clique sur ajouter          // On clique sur ajouter
# Line 225  class GuichetUnique extends Base2TestCas Line 324  class GuichetUnique extends Base2TestCas
324          // 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é
325          $this->verifyNoErrors();          $this->verifyNoErrors();
326          // On vérifie le message          // On vérifie le message
327          $this->assertRegExp("/^[\s\S]*Création du dossier d'instruction n°PC 013055 13 00001M01[\s\S]*$/",$this->byCssSelector("BODY")->text());          $this->assertRegExp("/^[\s\S]*Création du dossier d'instruction n°[\s\S]*$/", $this->byCssSelector("BODY")->text());
328          // On vérifie que le répertoire s'est crée          // On vérifie que le répertoire s'est crée
329          $this->assertTrue(file_exists("../trs/numerisation/Todo/PC0130551300001.M01"));          $this->assertTrue(file_exists("../trs/numerisation/Todo/PC013055".$annee."00001.M01"));
330          // On se déconnecte          // On se déconnecte
331          $this->logout();          $this->logout();
332                    
# Line 799  class GuichetUnique extends Base2TestCas Line 898  class GuichetUnique extends Base2TestCas
898          $this->verifynoerrors();          $this->verifynoerrors();
899          // On vérifie que ledossier qui ne doit pas être dans          // On vérifie que ledossier qui ne doit pas être dans
900          // "Dossier En Cours" sont ici          // "Dossier En Cours" sont ici
901          $this->assertRegExp("/^[\s\S]*PC 013055 13 00001P0[\s\S]*$/",          $this->assertRegExp("/^[\s\S]*PC 013055 14 00001P0[\s\S]*$/",
902              $this->byCssSelector("#tab-demande_autre_dossier .tab-tab")->text());              $this->byCssSelector("#tab-demande_autre_dossier .tab-tab")->text());
903          // On clique sur "Dossier En Cours"          // On clique sur "Dossier En Cours"
904          $this->byLinkText("Dossier En Cours")->click();          $this->byLinkText("Dossier En Cours")->click();

Legend:
Removed from v.2601  
changed lines
  Added in v.2676

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26