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

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

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

trunk/tests/testInstruction.php revision 2896 by nhaye, Mon Mar 31 09:14:14 2014 UTC branches/3.14.x/tests/testInstruction.php revision 3367 by vpihour, Thu Mar 26 18:02:05 2015 UTC
# Line 105  class Instruction extends Base2TestCase Line 105  class Instruction extends Base2TestCase
105          $this->deconnect();          $this->deconnect();
106      }      }
107      // Fonction public      // Fonction public
108      public function test01OuvertureMenu() {      public function test_01_OuvertureMenu() {
109          // Récupération des utilisateurs          // Récupération des utilisateurs
110          $utilisateurs = $this->listUtlisateurs;          $utilisateurs = $this->listUtlisateurs;
111          // Pour chaque utilisateur on lance le test          // Pour chaque utilisateur on lance le test
# Line 120  class Instruction extends Base2TestCase Line 120  class Instruction extends Base2TestCase
120      /**      /**
121       *       *
122       */       */
123      public function ttest_02_visualisation_di_et_da_par_l_instructeur_en_charge() {      public function test_02_visualisation_di_et_da_par_l_instructeur_en_charge() {
124                    
125          // On se connecte en tant que "instr"          // On se connecte en tant que "instr"
126          $this->login("instr", "instr");          $this->login("instr", "instr");
# Line 187  class Instruction extends Base2TestCase Line 187  class Instruction extends Base2TestCase
187      /**      /**
188       *       *
189       */       */
190      public function ttest_03_informations_du_widget_profil_instructeur() {      public function test_03_informations_du_widget_profil_instructeur() {
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 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é
# Line 240  class Instruction extends Base2TestCase Line 240  class Instruction extends Base2TestCase
240       * Ajout d'instructions par l'instructeur sur le dossier DP0130551200001P0       * Ajout d'instructions par l'instructeur sur le dossier DP0130551200001P0
241       * Modification d'un événement       * Modification d'un événement
242       */       */
243      public function ttest_04_ajout_instructions_par_instructeur() {      public function test_04_ajout_instructions_par_instructeur() {
244                    
245          // On se connecte en tant que "admin"          // On se connecte en tant que "admin"
246          $this->login("admin", "admin");          $this->login("admin", "admin");
# Line 349  class Instruction extends Base2TestCase Line 349  class Instruction extends Base2TestCase
349          $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());
350          // On se déconnecte          // On se déconnecte
351          $this->deconnect();          $this->deconnect();
352    
353            // On se connecte en tant que "admin"
354            $this->login("admin", "admin");
355            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
356            $this->verifyNoErrors();
357            // On clique sur le lien "Paramétrage Dossiers" dans le menu
358            $this->byLinkText("Paramétrage Dossiers")->click();
359            // On clique sur le sousmenu "Événement"
360            $this->byLinkText("Événement")->click();
361            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
362            $this->verifyNoErrors();
363            // On remplis le champs de recherche simple
364            $this->byCssSelector("input[name='recherche']")->value('accepter un dossier sans réserve');
365            // On clique sur le bouton recherche
366            $this->byCssSelector(".ui-button")->click();
367            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
368            $this->verifyNoErrors();
369            // On clique sur le résultat
370            $this->byLinkText("accepter un dossier sans réserve")->click();
371            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
372            $this->verifyNoErrors();
373            // On clique sur le bouton "Modifier"
374            $this->byId('bible')->click();
375            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
376            $this->verifyNoErrors();
377            // On Ajoute 2 éléments de bible automatique
378            $this->byId('bible')->click();
379            //On clique sur le "+" du tableau
380            $this->byClassName("add-16")->click();
381            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
382            $this->verifyNoErrors();
383            $this->byCssSelector('#sousform-bible #libelle')->value("test 1");
384            $this->byId('contenu')->value("test contenu 1");
385            $this->select($this->byId("complement"))->selectOptionByValue("1");
386            $this->select($this->byId("automatique"))->selectOptionByValue("Oui");
387            // On valide la modification
388            $this->byCssSelector("input[value='Ajouter']")->click();
389            sleep(1);
390            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
391            $this->verifyNoErrors();
392            // On vérifie le message de validation
393            $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#sousform-bible .message")->text());
394            //On retourne sur le tableau d'instructions
395            $this->byCssSelector("#sousform-bible .retour")->click();
396            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
397            $this->verifyNoErrors();
398            //On clique sur le "+" du tableau
399            $this->byClassName("add-16")->click();
400            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
401            $this->verifyNoErrors();
402            $this->byCssSelector('#sousform-bible #libelle')->value("test 2");
403            $this->byId('contenu')->value("test contenu 2");
404            $this->select($this->byId("complement"))->selectOptionByValue("2");
405            $this->select($this->byId("automatique"))->selectOptionByValue("Oui");
406            // On valide la modification
407            $this->byCssSelector("input[value='Ajouter']")->click();
408            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
409            $this->verifyNoErrors();
410            // On vérifie le message de validation
411            $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#sousform-bible .message")->text());
412            // On se déconnecte
413            $this->deconnect();
414  //  //
415          // On se connecte en tant que "instr"          // On se connecte en tant que "instr"
416          $this->login("instr", "instr");          $this->login("instr", "instr");
# Line 402  class Instruction extends Base2TestCase Line 464  class Instruction extends Base2TestCase
464          $this->verifyNoErrors();          $this->verifyNoErrors();
465          //On choisi l'événement "accepter un dossier sans réserve [acceptation]"          //On choisi l'événement "accepter un dossier sans réserve [acceptation]"
466          $this->select($this->byId("evenement"))->selectOptionByValue("81");          $this->select($this->byId("evenement"))->selectOptionByValue("81");
467            // On clique sur la bible automatique
468            $this->byLinkText('automatique')->click();
469          // On clique sur la bible          // On clique sur la bible
470          $this->byLinkText('bible')->click();          $this->byLinkText('bible')->click();
471          // On vérifie qu'il y est les enregistrments "V56" et "V64"          // On vérifie qu'il y est les enregistrments "V56" et "V64"
# Line 410  class Instruction extends Base2TestCase Line 474  class Instruction extends Base2TestCase
474          $this->assertRegExp('/^[\s\S]*V64[\s\S]*$/',          $this->assertRegExp('/^[\s\S]*V64[\s\S]*$/',
475              $this->byCssSelector("#tab-bible")->text());              $this->byCssSelector("#tab-bible")->text());
476          // On choisit plusieurs éléments          // On choisit plusieurs éléments
         $this->byId('checkbox4')->click();  
477          $this->byId('checkbox5')->click();          $this->byId('checkbox5')->click();
478            $this->byId('checkbox6')->click();
479          // On valide le formulaire          // On valide le formulaire
480          $this->byXPath("//input[@value='Valider']")->click();          $this->byXPath("//input[@value='Valider']")->click();
481          // 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é
# Line 431  class Instruction extends Base2TestCase Line 495  class Instruction extends Base2TestCase
495          // 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é
496          $this->verifyNoErrors();          $this->verifyNoErrors();
497          // On vérifie le contenu du champ "complément"          // On vérifie le contenu du champ "complément"
498            $this->assertContains("contenu 1", $this->byId("complement_om_html")->text());
499          $this->assertContains("Vu l'avis favorable de l'Architecte des Bâtiments de France en date du", $this->byId("complement_om_html")->text());          $this->assertContains("Vu l'avis favorable de l'Architecte des Bâtiments de France en date du", $this->byId("complement_om_html")->text());
500          $this->assertContains("Vu l'avis favorable avec prescriptions de la Direction Régionale des Affaires Culturelles en date du", $this->byId("complement_om_html")->text());          $this->assertContains("Vu l'avis favorable avec prescriptions de la Direction Régionale des Affaires Culturelles en date du", $this->byId("complement_om_html")->text());
501            $this->assertContains("contenu 2", $this->byId("complement2_om_html")->text());
502          //On vérifie que certains champs apparaissent          //On vérifie que certains champs apparaissent
503          $this->assertTrue($this->byClassName("libelle-date_envoi_controle_legalite")->displayed());          $this->assertTrue($this->byClassName("libelle-date_envoi_controle_legalite")->displayed());
504          $this->assertTrue($this->byClassName("libelle-date_envoi_controle_legalite")->displayed());          $this->assertTrue($this->byClassName("libelle-date_envoi_controle_legalite")->displayed());
# Line 512  class Instruction extends Base2TestCase Line 578  class Instruction extends Base2TestCase
578      }      }
579    
580      /**      /**
581       * Test le formulaire de la demande de type qui possède des select filtrés       * test le formulaire de la demande de type qui possède des select filtrés
582       */       */
583      public function ttest_05_ajout_lot() {      public function test_05_ajout_lot() {
584          // On se connecte en tant que "instr"          // On se connecte en tant que "instr"
585          $this->login("instr", "instr");          $this->login("instr", "instr");
586          // On clique sur le lien "Mes encours" dans le menu          // On clique sur le lien "Mes encours" dans le menu
# Line 566  class Instruction extends Base2TestCase Line 632  class Instruction extends Base2TestCase
632      }      }
633  //  //
634      /**      /**
635       * Test du lien automatique entre choix autorité compétente dans DI et       * test du lien automatique entre choix autorité compétente dans DI et
636       * évènement d'instruction à créer       * évènement d'instruction à créer
637       */       */
638      // Fonction privé      // Fonction privé
# Line 655  class Instruction extends Base2TestCase Line 721  class Instruction extends Base2TestCase
721          $this->deconnect();          $this->deconnect();
722      }      }
723      // Fonction public      // Fonction public
724      public function ttest_06_modification_autorite_competente() {      public function test_06_modification_autorite_competente() {
725          // Récupération des utilisateurs          // Récupération des utilisateurs
726          $utilisateurs = $this->listUtlisateurs;          $utilisateurs = $this->listUtlisateurs;
727          // Pour chaque utilisateur on lance le test          // Pour chaque utilisateur on lance le test
# Line 668  class Instruction extends Base2TestCase Line 734  class Instruction extends Base2TestCase
734      }      }
735  //  //
736      /**      /**
737       * Test de l'ajout de données techniques au dossier       * test de l'ajout de données techniques au dossier
738       */       */
739      public function ttest_07_edition_donnees_techniques() {      public function test_07_edition_donnees_techniques() {
740            // On se connecte en tant que "guichet"
741            $this->login("guichet", "guichet");
742            // On clique sur le sous-menu "Nouveau Dossier"
743            $this->byLinkText("Nouveau Dossier")->click();
744            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
745            $this->verifyNoErrors();
746            $this->select($this->byName("dossier_autorisation_type_detaille"))->selectOptionByValue("1");
747            $dossier = $this->addDossierInstruction(1, 1, "Test cerfa");
748            // On se déconnecte
749            $this->deconnect();
750          // On se connecte en tant que "instr"          // On se connecte en tant que "instr"
751          $this->login("admin", "admin");          $this->login("admin", "admin");
752          sleep(1);          sleep(1);
# Line 688  class Instruction extends Base2TestCase Line 764  class Instruction extends Base2TestCase
764          $this->byXPath("//div[@id='portlet-actions']/ul/li/a/span")->click();          $this->byXPath("//div[@id='portlet-actions']/ul/li/a/span")->click();
765          // 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é
766          $this->verifyNoErrors();          $this->verifyNoErrors();
767            // On modifie la durée de validité
768            $this->byId("om_validite_fin")->clear();
769            $this->byId("om_validite_fin")->value("31/12/2013");
770            // On valide le formulaire
771            $this->byXPath("//input[@value='Modifier']")->click();
772            // On vérifie le message de validation
773            $this->assertContains("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message .text")->text());
774            // On se déconnecte
775            $this->deconnect();
776            // On verifie que les données techniques sont toujours disponibles
777            // On se connecte en tant que "instr"
778            $this->login("instr", "instr");
779            // On clique sur le lien "Mes encours" dans le menu
780            $this->byLinkText("Mes Encours")->click();
781            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
782            $this->verifyNoErrors();
783            // On clique sur le lien "PC 013055 12 00002P0" dans le tableau
784            $this->byLinkText($dossier)->click();
785            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
786            $this->verifyNoErrors();
787            // On click sur le lien "Données techniques"
788            $this->byId("action-form-dossier_instruction_mes_encours-donnees_techniques")->click();
789            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
790            $this->verifyNoErrors();
791            sleep(1);
792            // Vérification des fieldset
793            $this->assertContains("Aménager", $this->byCssSelector("#sousform-donnees_techniques #form-content")->text());
794            $this->assertContains("Construire", $this->byCssSelector("#sousform-donnees_techniques #form-content")->text());
795            $this->assertContains("Démolir", $this->byCssSelector("#sousform-donnees_techniques #form-content")->text());
796            $this->byCssSelector(".ui-dialog-titlebar-close")->click();
797            // On se déconnecte
798            $this->deconnect();
799            // On se connecte en tant que "admin"
800            $this->login("admin", "admin");
801            sleep(1);
802            // Ouverture du menu de paramétrage des dossiers
803            $this->byLinkText("Paramétrage Dossiers")->click();
804            // Ouverture du menu des cerfa
805            $this->byLinkText("Cerfa")->click();
806            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
807            $this->verifyNoErrors();
808            //On clique sur le "+" du tableau
809            $this->byClassName("add-16")->click();
810            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
811            $this->verifyNoErrors();
812            $this->byId("libelle")->value("test cerfa 2");
813            $this->byId("code")->value("cerfa 2");
814            $this->byId("om_validite_debut")->value("01/04/2014");
815            $this->byId("om_validite_fin")->value("01/04/2018");
816          // Ajout de champs au formulaire des données techniques          // Ajout de champs au formulaire des données techniques
817          $this->byXPath("//div[@id='form-content']/div[2]/fieldset/legend")->click();          $this->byXPath("//div[@id='form-content']/div[2]/fieldset/legend")->click();
818          $this->byId("terr_juri_titul")->click();          $this->byId("terr_juri_titul")->click();
# Line 698  class Instruction extends Base2TestCase Line 823  class Instruction extends Base2TestCase
823          $this->byId("terr_juri_oin")->click();          $this->byId("terr_juri_oin")->click();
824          $this->byId("terr_juri_desc")->click();          $this->byId("terr_juri_desc")->click();
825          // Validation du formulaire          // Validation du formulaire
826          $this->byXPath("//input[@value='Modifier']")->click();          $this->byXPath("//input[@value='Ajouter']")->click();
827          // Vérification des erreurs          // Vérification des erreurs
828          $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector(".message .text")->text());          $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector(".message .text")->text());
829          $this->byLinkText("Retour")->click();          $this->byLinkText("Retour")->click();
830            // Ouverture du menu des DATD
831            $this->byLinkText("Type DA Détaillé")->click();
832            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
833            $this->verifyNoErrors();
834            // Ouverture du PCI
835            $this->byLinkText("PCI")->click();
836            // Modification du DATD affiché
837            $this->byXPath("//div[@id='portlet-actions']/ul/li/a/span")->click();
838            $this->select($this->byId("cerfa"))->clearSelectedOptions();
839            $this->select($this->byName("cerfa"))->selectOptionByLabel("test cerfa 2");
840            // On valide le formulaire
841            $this->byXPath("//input[@value='Modifier']")->click();
842            // On vérifie le message de validation
843            $this->assertContains("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message .text")->text());
844            // On clique sur "Retour"
845            $this->byLinkText("Retour")->click();
846            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
847            $this->verifyNoErrors();
848            // On clique sur "Retour"
849            $this->byLinkText("Retour")->click();
850            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
851            $this->verifyNoErrors();
852            // Ouverture du PCI
853            $this->byLinkText("AZ")->click();
854            // Modification du DATD affiché
855            $this->byXPath("//div[@id='portlet-actions']/ul/li/a/span")->click();
856            $this->select($this->byName("cerfa"))->selectOptionByValue("");
857            // On valide le formulaire
858            $this->byXPath("//input[@value='Modifier']")->click();
859            // On vérifie le message de validation
860            $this->assertContains("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message .text")->text());
861            // On clique sur "Retour"
862            $this->byLinkText("Retour")->click();
863            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
864            $this->verifyNoErrors();
865          // On se déconnecte          // On se déconnecte
866          $this->deconnect();          $this->deconnect();
867            // On verifie que les données techniques sont toujours disponibles
868          // On se connecte en tant que "instr"          // On se connecte en tant que "instr"
869          $this->login("instr", "instr");          $this->login("instr", "instr");
870          // On clique sur le lien "Mes encours" dans le menu          // On clique sur le lien "Mes encours" dans le menu
# Line 711  class Instruction extends Base2TestCase Line 872  class Instruction extends Base2TestCase
872          // 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é
873          $this->verifyNoErrors();          $this->verifyNoErrors();
874          // On clique sur le lien "AZ0130551200001P0" dans le tableau          // On clique sur le lien "AZ0130551200001P0" dans le tableau
875          $this->byLinkText("AZ 013055 12 00001P0")->click();          $this->byLinkText($dossier)->click();
876          // 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é
877          $this->verifyNoErrors();          $this->verifyNoErrors();
878          // On click sur le lien "Données techniques"          // On click sur le lien "Données techniques"
879          $this->byXPath("//div[@id='portlet-actions']/ul/li[2]/a/span")->click();          $this->byXPath("//div[@id='portlet-actions']/ul/li[2]/a/span")->click();
880          // 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é
881          $this->verifyNoErrors();          $this->verifyNoErrors();
882            // Vérification des fieldset
883            $this->assertContains("Aménager", $this->byCssSelector("#sousform-donnees_techniques #form-content")->text());
884            $this->assertContains("Construire", $this->byCssSelector("#sousform-donnees_techniques #form-content")->text());
885            $this->assertContains("Démolir", $this->byCssSelector("#sousform-donnees_techniques #form-content")->text());
886            $this->byCssSelector(".ui-dialog-titlebar-close")->click();
887            // On se déconnecte
888            $this->deconnect();
889            // On se connecte en tant que "instr"
890            $this->login("guichet", "guichet");
891            /** On instancie une nouvelle demande initial PCI **/
892            // On clique sur le menu "Guichet Unique"
893            $this->byLinkText("Guichet Unique")->click();
894            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
895            $this->verifyNoErrors();
896            // On clique sur le sous-menu "Nouveau Dossier"
897            $this->byLinkText("Nouveau Dossier")->click();
898            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
899            $this->verifyNoErrors();
900            $this->select($this->byName("dossier_autorisation_type_detaille"))->selectOptionByValue("1");
901            $dossier = $this->addDossierInstruction(1, 1, "Test cerfa");
902            // On se déconnecte
903            $this->deconnect();
904            // On se connecte en tant que "instr"
905            $this->login("instr", "instr");
906            // On clique sur le lien "Mes encours" dans le menu
907            $this->byLinkText("Mes Encours")->click();
908            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
909            $this->verifyNoErrors();
910            //On cherche le service
911            $this->byName("recherche")->value(str_replace(" ","",$dossier));
912            //On valide
913            $this->byName("s1")->click();
914            // On clique sur le lien "AZ0130551200001P0" dans le tableau
915            $this->byLinkText($dossier)->click();
916            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
917            $this->verifyNoErrors();
918            // On click sur le lien "Données techniques"
919            $this->byXPath("//div[@id='portlet-actions']/ul/li[2]/a/span")->click();
920          sleep(1);          sleep(1);
         // Modification des données techniques  
         $this->byCssSelector("#sousform-donnees_techniques .edit-16")->click();  
921          // 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é
922          $this->verifyNoErrors();          $this->verifyNoErrors();
923            $this->assertRegExp('/^[\s\S]*Terrain[\s\S]*$/', $this->byCssSelector("#sousform-donnees_techniques #form-content")->text());
924            $this->byCssSelector(".ui-dialog-titlebar-close")->click();
925            // On se déconnecte
926            $this->deconnect();
927            // On se connecte en tant que "instr"
928            $this->login("admin", "admin");
929          sleep(1);          sleep(1);
930          $this->assertRegExp('/^[\s\S]*Terrain[\s\S]*$/', $this->byCssSelector("#sformulaire #form-content legend")->text());          // Ouverture du menu de paramétrage des dossiers
931          // Validation du formulaire          $this->byLinkText("Paramétrage Dossiers")->click();
932            // Ouverture du menu des cerfa
933            $this->byLinkText("Cerfa")->click();
934            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
935            $this->verifyNoErrors();
936            // Afficher les éléments expirés
937            $this->byLinkText("Afficher les éléments expirés")->click();
938            sleep(0.5);
939            // Ouverture d'un cerfa
940            $this->byLinkText("cerfa de test n°1")->click();
941            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
942            $this->verifyNoErrors();
943            // Modification du cerfa affiché
944            $this->byXPath("//div[@id='portlet-actions']/ul/li/a/span")->click();
945            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
946            $this->verifyNoErrors();
947            // On modifie la durée de validité
948            $this->byId("om_validite_fin")->clear();
949            $this->byId("om_validite_fin")->value("31/12/2018");
950            // On valide le formulaire
951            $this->byXPath("//input[@value='Modifier']")->click();
952            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
953            $this->verifyNoErrors();
954            // Ouverture du menu des DATD
955            $this->byLinkText("Type DA Détaillé")->click();
956            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
957            $this->verifyNoErrors();
958            // Ouverture du PCI
959            $this->byLinkText("PCI")->click();
960            // Modification du DATD affiché
961            $this->byXPath("//div[@id='portlet-actions']/ul/li/a/span")->click();
962            $this->select($this->byId("cerfa"))->clearSelectedOptions();
963            $this->select($this->byName("cerfa"))->selectOptionByLabel("cerfa de test n°1");
964            // On valide le formulaire
965            $this->byXPath("//input[@value='Modifier']")->click();
966            // On vérifie le message de validation
967            $this->assertContains("Vos modifications ont bien été enregistrées.", $this->byCssSelector(".message .text")->text());
968            // On clique sur "Retour"
969            $this->byLinkText("Retour")->click();
970            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
971            $this->verifyNoErrors();
972            // On clique sur "Retour"
973            $this->byLinkText("Retour")->click();
974            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
975            $this->verifyNoErrors();
976            // Ouverture du PCI
977            $this->byLinkText("AZ")->click();
978            // Modification du DATD affiché
979            $this->byXPath("//div[@id='portlet-actions']/ul/li/a/span")->click();
980            $this->select($this->byName("cerfa"))->selectOptionByLabel("cerfa de test n°1");
981            // On valide le formulaire
982          $this->byXPath("//input[@value='Modifier']")->click();          $this->byXPath("//input[@value='Modifier']")->click();
983          // 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é
984          $this->verifyNoErrors();          $this->verifyNoErrors();
         $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-donnees_techniques .message .text")->text());  
         $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();  
         sleep(1);  
985          // On se déconnecte          // On se déconnecte
986          $this->logout();          $this->logout();
 //  
987      }      }
988  //  //
989      /**      /**
990       * Test un événement d'instruction qui a un événement "retour"       * test un événement d'instruction qui a un événement "retour"
991       */       */
992      public function ttest_08_evenement_instruction_retour() {      public function test_08_evenement_instruction_retour() {
993  //  //
994          // On se connecte à l'application en tant qu'administrateur          // On se connecte à l'application en tant qu'administrateur
995          $this->login("admin", "admin");          $this->login("admin", "admin");
# Line 994  class Instruction extends Base2TestCase Line 1243  class Instruction extends Base2TestCase
1243      }      }
1244      //      //
1245      /**      /**
1246       * Test la suppression d'un événement d'instruction lié à une demande qui ne       * test la suppression d'un événement d'instruction lié à une demande qui ne
1247       * créée pas de nouveau dossier d'instruction       * créée pas de nouveau dossier d'instruction
1248       */       */
1249      public function ttest_09_suppression_evenement_demande(){      public function test_09_suppression_evenement_demande(){
1250          //          //
1251          //Ajout du paramétrage d'une nouvelle demande          //Ajout du paramétrage d'une nouvelle demande
1252          // On se connecte à l'application en tant qu'administrateur          // On se connecte à l'application en tant qu'administrateur
# Line 1027  class Instruction extends Base2TestCase Line 1276  class Instruction extends Base2TestCase
1276          // On sélectionne la nature 'Dossier existant'          // On sélectionne la nature 'Dossier existant'
1277          $this->select($this->byId("demande_nature"))->selectOptionByValue("2");          $this->select($this->byId("demande_nature"))->selectOptionByValue("2");
1278          // On sélectionne l'état 'En cours'          // On sélectionne l'état 'En cours'
1279          $this->select($this->byName("etats_dossier_autorisation_autorises[]"))->selectOptionByValue("1");          $this->select($this->byName("etats_autorises[]"))->selectOptionByValue("notifier");
1280          // On sélectionne l'événement 'Defrichement soumis a enquete publique'          // On sélectionne l'événement 'Defrichement soumis a enquete publique'
1281          $this->select($this->byId("evenement"))->selectOptionByValue("15");          $this->select($this->byId("evenement"))->selectOptionByValue("15");
1282          // On sélectionne la contrainte 'Avec récupération demandeur'          // On sélectionne la contrainte 'Avec récupération demandeur'
# Line 1052  class Instruction extends Base2TestCase Line 1301  class Instruction extends Base2TestCase
1301          $this->byId("action-tab-demande_dossier_encours-left-consulter-AZ0130551200001P0")->click();          $this->byId("action-tab-demande_dossier_encours-left-consulter-AZ0130551200001P0")->click();
1302          // 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é
1303          $this->verifyNoErrors();          $this->verifyNoErrors();
1304            // On vérifie l'état du DI
1305            $this->assertContains("delai de notification envoye", $this->byCssSelector("#fieldset-form-demande_dossier_encours-etat-du-dossier-d_instruction.cadre .fieldsetContent .form-content")->text());
1306          //On sélectionne le type de la demande          //On sélectionne le type de la demande
1307          $this->select($this->byId("demande_type"))->selectOptionByLabel("test_09_suppression");sleep(1);          $this->select($this->byId("demande_type"))->selectOptionByLabel("test_09_suppression");sleep(1);
1308          // On clique sur le bouton ajouter          // On clique sur le bouton ajouter
# Line 1106  class Instruction extends Base2TestCase Line 1357  class Instruction extends Base2TestCase
1357      }      }
1358  //  //
1359      /**      /**
1360       * Test sur les types d'éditions des consultations       * test sur les types d'éditions des consultations
1361       */       */
1362      function ttest_10_nouveau_type_edition_consultation(){      function test_10_nouveau_type_edition_consultation(){
1363          //          //
1364          //On saisit un service de test                  //On saisit un service de test        
1365          // On se connecte à l'application          // On se connecte à l'application
# Line 1207  class Instruction extends Base2TestCase Line 1458  class Instruction extends Base2TestCase
1458          $this->byName("recherche")->value("test_10");          $this->byName("recherche")->value("test_10");
1459          //On valide          //On valide
1460          $this->byName("s1")->click();          $this->byName("s1")->click();
1461          //On clique sur le service ttest_10          //On clique sur le service test_10
1462          $this->byLinkText("test_10")->click();          $this->byLinkText("test_10")->click();
1463          // 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é
1464          $this->verifyNoErrors();          $this->verifyNoErrors();
# Line 1271  class Instruction extends Base2TestCase Line 1522  class Instruction extends Base2TestCase
1522      }      }
1523  //  //
1524      /**      /**
1525       * Test sur un événement non verrouillable       * test sur un événement non verrouillable
1526       */       */
1527      public function ttest_11_evenement_non_verrouillable(){      public function test_11_evenement_non_verrouillable(){
1528  //  //
1529          /* On crée une nouvelle demande initial */          /* On crée une nouvelle demande initial */
1530          // On se connecte à l'application          // On se connecte à l'application
# Line 1404  class Instruction extends Base2TestCase Line 1655  class Instruction extends Base2TestCase
1655      }      }
1656  //  //
1657      /**      /**
1658       * Test que les données du dossier d'autorisation sont recopiés dans les       * test que les données du dossier d'autorisation sont recopiés dans les
1659       * champs 'archive_' de l'événement d'instruction de la création du nouveau       * champs 'archive_' de l'événement d'instruction de la création du nouveau
1660       * dossier d'instruction       * dossier d'instruction
1661       */       */
1662      public function ttest_12_recopie_donnees_da_vers_nouveau_di(){      public function test_12_recopie_donnees_da_vers_nouveau_di(){
1663          //          //
1664          //{{{ Ajout de d'un nouveau dossier          //{{{ Ajout de d'un nouveau dossier
1665          // On se connecte à l'application          // On se connecte à l'application
# Line 1556  class Instruction extends Base2TestCase Line 1807  class Instruction extends Base2TestCase
1807          // On sélectionne Dossier existant          // On sélectionne Dossier existant
1808          $this->select($this->byId("demande_nature"))->selectOptionByValue(2);          $this->select($this->byId("demande_nature"))->selectOptionByValue(2);
1809          // On sélectionne Accordé          // On sélectionne Accordé
1810          $this->select($this->byName("etats_dossier_autorisation_autorises[]"))->selectOptionByValue(2);          $this->select($this->byName("etats_autorises[]"))->selectOptionByValue('accepter');
1811          $this->select($this->byId("dossier_instruction_type"))->selectOptionByLabel("PCI - ttest_12_recopie_donnees");          $this->select($this->byId("dossier_instruction_type"))->selectOptionByLabel("PCI - test_12_recopie_donnees");
1812          $this->select($this->byId("evenement"))->selectOptionByLabel("test_12_recopie_donnees");          $this->select($this->byId("evenement"))->selectOptionByLabel("test_12_recopie_donnees");
1813          // On clique sur ajouter          // On clique sur ajouter
1814          $this->byXPath("//input[@value='Ajouter']")->click();          $this->byXPath("//input[@value='Ajouter']")->click();
# Line 1623  class Instruction extends Base2TestCase Line 1874  class Instruction extends Base2TestCase
1874      }      }
1875      //      //
1876      /**      /**
1877       * Test de la numérotation des DI successifs       * test de la numérotation des DI successifs
1878       */       */
1879      function ttest_13_numerotation_dossier_instruction_successif(){      function test_13_numerotation_dossier_instruction_successif(){
1880              //              //
1881          //{{{ Ajout de d'un nouveau dossier d'instruction P0          //{{{ Ajout de d'un nouveau dossier d'instruction P0
1882          // On se connecte à l'application          // On se connecte à l'application
# Line 1669  class Instruction extends Base2TestCase Line 1920  class Instruction extends Base2TestCase
1920          $this->select($this->byName("evenement"))->selectOptionByValue(81);          $this->select($this->byName("evenement"))->selectOptionByValue(81);
1921          // On clique sur ajouter          // On clique sur ajouter
1922          $this->byXPath("//input[@value='Ajouter']")->click();          $this->byXPath("//input[@value='Ajouter']")->click();
1923            sleep(1);
1924          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
1925          $this->verifynoerrors();          $this->verifynoerrors();
1926          // On vérifie que l'événement d'instruction s'est bien ajouté          // On vérifie que l'événement d'instruction s'est bien ajouté
1927          $this->assertContains("Vos modifications ont bien été enregistrées.",$this->byCssSelector("#sousform-instruction .message")->text());          $this->assertContains("Vos modifications ont bien été enregistrées.",$this->byCssSelector("#sousform-instruction .message")->text());
1928            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
1929            $this->verifyNoErrors();
1930          // On se déconnecte          // On se déconnecte
1931          $this->deconnect();          $this->deconnect();
1932          //}}}          //}}}
# Line 1703  class Instruction extends Base2TestCase Line 1957  class Instruction extends Base2TestCase
1957          $this->verifynoerrors();          $this->verifynoerrors();
1958          // On vérifie que le type de dossier d'instruction s'est bien ajouté          // On vérifie que le type de dossier d'instruction s'est bien ajouté
1959          $this->assertContains("Vos modifications ont bien été enregistrées.",$this->byCssSelector(".message")->text());          $this->assertContains("Vos modifications ont bien été enregistrées.",$this->byCssSelector(".message")->text());
1960            // On clique sur "Retour"
1961            $this->byClassName("retour")->click();
1962            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
1963            $this->verifyNoErrors();
1964            //On saisie le nom due l'événement dans la recherche simple
1965            $this->byName("recherche")->value("Test numérotation");
1966            //On valide la recherche
1967            $this->byName('s1')->submit();
1968            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
1969            $this->verifyNoErrors();
1970            //On clique sur l'événement
1971            $this->byLinkText("Test numérotation")->click();
1972            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
1973            $this->verifyNoErrors();
1974            //On récupère l'identifiant
1975            $dossier_instruction_type = trim($this->byId("dossier_instruction_type")->text());
1976          //}}}          //}}}
1977          //          //
1978          //{{{ Ajout d'un nouveau type de demande          //{{{ Ajout d'un nouveau type de demande
# Line 1720  class Instruction extends Base2TestCase Line 1990  class Instruction extends Base2TestCase
1990          $this->select($this->byId("groupe"))->selectOptionByValue(1);          $this->select($this->byId("groupe"))->selectOptionByValue(1);
1991          sleep(1);          sleep(1);
1992          $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByValue(1);          $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByValue(1);
1993            sleep(1);
1994          $this->select($this->byId("demande_nature"))->selectOptionByValue(2);          $this->select($this->byId("demande_nature"))->selectOptionByValue(2);
1995          $this->select($this->byName("etats_dossier_autorisation_autorises[]"))->selectOptionByValue(2);          sleep(1);
1996          $this->select($this->byId("dossier_instruction_type"))->selectOptionByLabel("PCI - Test numérotation");          $this->select($this->byName("etats_autorises[]"))->selectOptionByValue('accepter');
1997            sleep(1);
1998            $this->select($this->byId("dossier_instruction_type"))->selectOptionByValue($dossier_instruction_type);
1999            sleep(1);
2000          $this->select($this->byId("evenement"))->selectOptionByValue(1);          $this->select($this->byId("evenement"))->selectOptionByValue(1);
2001          // On clique sur ajouter          // On clique sur ajouter
2002          $this->byXPath("//input[@value='Ajouter']")->click();          $this->byXPath("//input[@value='Ajouter']")->click();
# Line 1770  class Instruction extends Base2TestCase Line 2044  class Instruction extends Base2TestCase
2044      }      }
2045    
2046      /**      /**
2047       * Test de la numérotation des DI successifs       * test de la numérotation des DI successifs
2048       */       */
2049      function test_14_recalcul_donnees_DI_vers_DA(){      function test_14_recalcul_donnees_DI_vers_DA(){
2050          //{{{ Ajout de d'un nouveau dossier          //{{{ Ajout de d'un nouveau dossier
# Line 1813  class Instruction extends Base2TestCase Line 2087  class Instruction extends Base2TestCase
2087          sleep(1);          sleep(1);
2088          // On déplie le fieldset Construire          // On déplie le fieldset Construire
2089          $this->byCssSelector("#fieldset-sousform-donnees_techniques-construire legend")->click();          $this->byCssSelector("#fieldset-sousform-donnees_techniques-construire legend")->click();
2090          sleep(1);          sleep(5);
2091          // On déplie le fieldset Destinations et surfaces des constructions          // On déplie le fieldset Destinations et surfaces des constructions
2092          $this->byCssSelector("#fieldset-sousform-donnees_techniques-destinations-et-surfaces-des-constructions legend")->click();          $this->byCssSelector("#fieldset-sousform-donnees_techniques-destinations-et-surfaces-des-constructions legend")->click();
2093          sleep(1);          sleep(1);
# Line 1821  class Instruction extends Base2TestCase Line 2095  class Instruction extends Base2TestCase
2095          $this->byId("su_cstr_shon1")->value("120");          $this->byId("su_cstr_shon1")->value("120");
2096          // On clique sur ajouter          // On clique sur ajouter
2097          $this->byXPath("//input[@value='Modifier']")->click();          $this->byXPath("//input[@value='Modifier']")->click();
2098            sleep(1);
2099          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
2100          $this->verifynoerrors();          $this->verifynoerrors();
2101          // On vérifie le message          // On vérifie le message
2102          $this->assertContains("Vos modifications ont bien été enregistrées.",$this->byCssSelector(".message")->text());          $this->assertContains("Vos modifications ont bien été enregistrées.",$this->byCssSelector("#sousform-donnees_techniques .message")->text());
2103          //On clique sur retour          //On clique sur retour
2104          $this->byCssSelector("#sousform-donnees_techniques .retour")->click();          $this->byCssSelector("#sousform-donnees_techniques .retour")->click();
2105          //}}}          //}}}
# Line 1925  class Instruction extends Base2TestCase Line 2200  class Instruction extends Base2TestCase
2200          // 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é
2201          $this->verifyNoErrors();          $this->verifyNoErrors();
2202          sleep(1);          sleep(1);
2203            //On cherche le dossier d'instruction
2204            $this->byName("recherche")->value(str_replace(" ", "", $dossier));
2205            // On valide la recherche
2206            $this->byName("s1")->click();
2207            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2208            $this->verifyNoErrors();
2209          // On clique sur le dossier dernièrement créé          // On clique sur le dossier dernièrement créé
2210          $this->byLinkText($dossier)->click();          $this->byLinkText($dossier)->click();
2211          // 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é
# Line 1954  class Instruction extends Base2TestCase Line 2235  class Instruction extends Base2TestCase
2235          // 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é
2236          $this->verifyNoErrors();          $this->verifyNoErrors();
2237          sleep(1);          sleep(1);
2238            //On cherche le dossier d'instruction
2239            $this->byClassName("champFormulaire")->value(str_replace(" ", "", $dossier));
2240            // On valide la recherche
2241            $this->byId("f1")->submit();
2242            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2243            $this->verifyNoErrors();
2244          // On clique sur le dossier dernièrement créé          // On clique sur le dossier dernièrement créé
2245          $this->byLinkText($dossier)->click();          $this->byLinkText($dossier)->click();
2246          // 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é
# Line 1968  class Instruction extends Base2TestCase Line 2255  class Instruction extends Base2TestCase
2255       * Cette méthode teste l'envoi de message au référentiel ERP lors de l'ajout       * Cette méthode teste l'envoi de message au référentiel ERP lors de l'ajout
2256       * d'instruction       * d'instruction
2257       */       */
2258      public function ttest_15_envoi_de_message_erp(){      public function test_15_envoi_de_message_erp(){
2259                    
2260          // On se connecte en tant que "admin"          // On se connecte en tant que "admin"
2261          $this->login("admin", "admin");          $this->login("admin", "admin");
# Line 2130  class Instruction extends Base2TestCase Line 2417  class Instruction extends Base2TestCase
2417          $this->assertContains('La definalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-instruction .message .text")->text());          $this->assertContains('La definalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-instruction .message .text")->text());
2418          //On clique sur modifier          //On clique sur modifier
2419          $this->byCssSelector("#sousform-instruction .edit-16")->click();          $this->byCssSelector("#sousform-instruction .edit-16")->click();
2420            sleep(2);
2421          // 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é
2422          $this->verifyNoErrors();          $this->verifyNoErrors();
2423          //On choisit un signataire Albert Dupont          //On choisit un signataire Albert Dupont
# Line 2175  class Instruction extends Base2TestCase Line 2463  class Instruction extends Base2TestCase
2463       * Cette méthode teste l'envoi de message au référentiel ERP lors de la       * Cette méthode teste l'envoi de message au référentiel ERP lors de la
2464       * modification d'un dossier d'insruction       * modification d'un dossier d'insruction
2465       */       */
2466      public function ttest_16_envoi_de_message_erp_dossier_instruction(){      public function test_16_envoi_de_message_erp_dossier_instruction(){
2467                    
2468          // On se connecte en tant que "admin"          // On se connecte en tant que "admin"
2469          $this->login("admin", "admin");          $this->login("admin", "admin");
# Line 2326  class Instruction extends Base2TestCase Line 2614  class Instruction extends Base2TestCase
2614          //On se déconnecte          //On se déconnecte
2615          $this->logout();          $this->logout();
2616      }      }
2617    
2618        /**
2619         * test d'annulation d'un DA.
2620         */
2621        function test_17_di_annulation() {
2622            // On se connecte en tant que "admin"
2623            $this->login("admin", "admin");
2624            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2625            $this->verifyNoErrors();
2626            
2627            //On clique sur Administration
2628            $this->byLinkText("Paramétrage Dossiers")->click();
2629            // Ajout d'un type de DI ANNULATION
2630            $this->byLinkText("Type DI")->click();
2631            $this->byCssSelector(".add-16")->click();
2632            $this->byId("code")->value('ANNUL');
2633            $this->byId("libelle")->value('Demande d\'annulation');
2634            $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByValue('1');
2635            $this->byId('suffixe')->click();
2636            $this->select($this->byName("mouvement_sitadel"))->selectOptionByValue('SUPPRESSION');
2637            // On clique sur ajouter
2638            $this->byXPath("//input[@value='Ajouter']")->click();
2639            // On vérifie qu'il n'y ait pas d'erreur
2640            $this->verifynoerrors();
2641            // On vérifie que le message de validation est présent
2642            $this->assertContains('Vos modifications ont bien été enregistrées.',
2643                $this->byCssSelector(".message .text")->text());
2644            //On clique sur le bouton retour
2645            $this->byLinkText("Retour")->click();
2646            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2647            $this->verifyNoErrors();
2648            //On saisie le nom due l'événement dans la recherche simple
2649            $this->byClassName("champFormulaire")->value("ANNUL");
2650            //On valide la recherche
2651            $this->byName('s1')->submit();
2652            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2653            $this->verifyNoErrors();
2654            //On clique sur l'événement
2655            $this->byLinkText("ANNUL")->click();
2656            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2657            $this->verifyNoErrors();
2658            // Récupération de l'id du type de DI
2659            $idDIAnnul = $this->byId("dossier_instruction_type")->text();
2660            // Ajout d'un type de demande ANNULATION
2661            $this->byLinkText("Type")->click();
2662            $this->byCssSelector(".add-16")->click();
2663            $this->byId("code")->value('ANNUL');
2664            $this->byId("libelle")->value('Demande d\'annulation');
2665            $this->select($this->byName("groupe"))->selectOptionByValue('1');
2666            $this->select($this->byName("dossier_autorisation_type_detaille"))->selectOptionByValue('1');
2667            $this->select($this->byName("demande_nature"))->selectOptionByValue('2');
2668            $this->select($this->byName("etats_autorises[]"))
2669                ->selectOptionByValue("notifier");
2670            $this->select($this->byName("contraintes"))->selectOptionByValue('avec_recup');
2671            $this->select($this->byName("dossier_instruction_type"))->selectOptionByValue($idDIAnnul);
2672            $this->select($this->byName("evenement"))->selectOptionByValue('25');
2673            // On clique sur ajouter
2674            $this->byXPath("//input[@value='Ajouter']")->click();
2675            // On vérifie qu'il n'y ait pas d'erreur
2676            $this->verifynoerrors();
2677            // On vérifie que le message de validation est présent
2678            $this->assertContains('Vos modifications ont bien été enregistrées.',
2679                $this->byCssSelector(".message .text")->text());
2680            //On clique sur le bouton retour
2681            $this->byLinkText("Retour")->click();
2682            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2683            $this->verifyNoErrors();
2684            //On saisie le nom due l'événement dans la recherche simple
2685            $this->byClassName("champFormulaire")->value("ANNUL");
2686            //On valide la recherche
2687            $this->byName('s1')->submit();
2688            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2689            $this->verifyNoErrors();
2690            //On clique sur l'événement
2691            $this->byLinkText("ANNUL")->click();
2692            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2693            $this->verifyNoErrors();
2694            // Récupération de l'id de la demande
2695            $idDemandeAnnul = $this->byId("demande_type")->text();
2696            // Modification de l'action d'abandon de dossier
2697            $this->byLinkText("Action")->click();
2698            // On vérifie qu'il n'y ait pas d'erreur
2699            $this->verifynoerrors();
2700            // Modification de l'action d'abandon de dossier
2701            $this->byLinkText("abandon")->click();
2702            // Modification de l'action d'abandon de dossier
2703            $this->byCssSelector(".edit-16")->click();
2704            // On vérifie qu'il n'y ait pas d'erreur
2705            $this->verifynoerrors();
2706            $this->byId("regle_avis")->clear();
2707            $this->byId("regle_avis")->value('avis_decision');
2708            $this->byId("regle_date_decision")->clear();
2709            $this->byId("regle_date_decision")->value('date_evenement');
2710            // On clique sur ajouter
2711            $this->byXPath("//input[@value='Modifier']")->click();
2712            // On vérifie qu'il n'y ait pas d'erreur
2713            $this->verifynoerrors();
2714            // On vérifie que le message de validation est présent
2715            $this->assertContains('Vos modifications ont bien été enregistrées.',
2716                $this->byCssSelector(".message .text")->text());
2717            // On se déconnecte
2718            $this->deconnect();
2719            // On se connecte en tant que "admin"
2720            $this->login("guichet", "guichet");
2721            //On clique sur le menu des instructions
2722            $this->byLinkText("Nouveau Dossier")->click();
2723            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2724            $this->verifyNoErrors();
2725            // Création d'un DI
2726            $dossier = $this->addDossierInstruction(1, 1, "test annulation");
2727            // On se déconnecte
2728            $this->deconnect();
2729            // On se connecte en tant que "instr"
2730            $this->login("instr", "instr");
2731            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2732            $this->verifyNoErrors();
2733            // On clique sur le lien "Mes encours" dans le menu
2734            $this->byLinkText("Recherche")->click();
2735            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2736            $this->verifyNoErrors();
2737            $this->byId("dossier")->value(str_replace(" ", "", $dossier));
2738            $this->byName("advanced-search-submit")->click();
2739            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2740            $this->verifyNoErrors();
2741            // On clique sur le dossier dernièrement créé
2742            $this->byLinkText($dossier)->click();
2743            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2744            $this->verifyNoErrors();
2745            // On clique sur l'onglet "Instruction"
2746            $this->byId("dossier_autorisation")->click();
2747            sleep(1);
2748            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2749            $this->verifyNoErrors();
2750            // Verification de l'état du DA correspondant
2751            $this->assertContains('En cours', $this->byCssSelector("#sousform-dossier_autorisation")->text());
2752            // On se déconnecte
2753            $this->deconnect();
2754            // On se connecte en tant que "guichet"
2755            $this->login("guichet", "guichet");
2756            //On clique sur le menu des instructions
2757            $this->byLinkText("Dossier En Cours")->click();
2758            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2759            $this->verifyNoErrors();
2760            // Création d'un DI
2761            $dossier = $this->addDossierInstruction(
2762                1,
2763                $idDemandeAnnul,
2764                "test annulation",
2765                2,
2766                $dossier,
2767                false);
2768            // On se déconnecte
2769            $this->deconnect();
2770            // On se connecte en tant que "instr"
2771            $this->login("instr", "instr");
2772            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2773            $this->verifyNoErrors();
2774            // On clique sur le lien "Mes encours" dans le menu
2775            $this->byLinkText("Recherche")->click();
2776            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2777            $this->verifyNoErrors();
2778            $this->byId("dossier")->value(str_replace(" ", "", $dossier));
2779            $this->byName("advanced-search-submit")->click();
2780            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2781            $this->verifyNoErrors();
2782            // On clique sur le dossier dernièrement créé
2783            $this->byLinkText($dossier)->click();
2784            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2785            $this->verifyNoErrors();
2786            // On clique sur l'onglet "Instruction"
2787            $this->byId("dossier_autorisation")->click();
2788            sleep(1);
2789            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2790            $this->verifyNoErrors();
2791            // Verification de l'état du DA correspondant
2792            $this->assertContains('Abandonné', $this->byCssSelector("#sousform-dossier_autorisation")->text());
2793            //On se déconnecte
2794            $this->logout();
2795        }
2796            
2797      /**      /**
2798       * Ajout d'un dossier d'instruction par le guichet unique       * Ajout d'un dossier d'instruction par le guichet unique
# Line 2337  class Instruction extends Base2TestCase Line 2804  class Instruction extends Base2TestCase
2804       * @return le numéro de dossier d'instruction qui vient d'être créé       * @return le numéro de dossier d'instruction qui vient d'être créé
2805       */       */
2806      public function addDossierInstruction($dossier_autorisation_type_detaille,      public function addDossierInstruction($dossier_autorisation_type_detaille,
2807          $demande_type, $nom_petit = "test recopie",  $type = 1, $dossier = "" ){          $demande_type, $nom_petit = "test recopie",  $type = 1, $dossier = "",
2808            $petit = true){
2809                    
2810          if ($type===1){          if ($type===1){
2811              //On choisit le type détaillé de dossier d'autorisation              //On choisit le type détaillé de dossier d'autorisation
2812              $this->select($this->byName("dossier_autorisation_type_detaille"))->selectOptionByValue($dossier_autorisation_type_detaille);              $this->select($this->byName("dossier_autorisation_type_detaille"))->selectOptionByValue($dossier_autorisation_type_detaille);
2813          }          }
2814          else {          else {
2815              sleep(2);              sleep(5);
2816              // On remplit le champ de recherche simple              // On remplit le champ de recherche simple
2817              $this->byCssSelector("input[name='recherche']")->value(str_replace(' ', '', $dossier));              $this->byCssSelector("input[name='recherche']")->value(str_replace(' ', '', $dossier));
2818              // On clique sur le bouton recherche              // On clique sur le bouton recherche
# Line 2358  class Instruction extends Base2TestCase Line 2826  class Instruction extends Base2TestCase
2826          }          }
2827          //On choisit le type de demande          //On choisit le type de demande
2828          $this->select($this->byName("demande_type"))->selectOptionByValue($demande_type);          $this->select($this->byName("demande_type"))->selectOptionByValue($demande_type);
2829          //On clique sur "Saisir le pétitionnaire principal"          if($petit) {
2830          $this->byId("add_petitionnaire_principal")->click();              //On clique sur "Saisir le pétitionnaire principal"
2831          // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché              $this->byId("add_petitionnaire_principal")->click();
2832          $this->verifyNoErrors();              // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
2833          //On saisie le nom du pétitionnaire principal              $this->verifyNoErrors();
2834          $this->byId("particulier_nom")->value($nom_petit);              //On saisie le nom du pétitionnaire principal
2835          // On clique sur ajouter              $this->byId("particulier_nom")->value($nom_petit);
2836          $this->byCssSelector("div#sformulaire form div.formControls input.om-button")->click();sleep(1);              // On clique sur ajouter
2837          // On vérifie qu'il n'y ait pas d'erreur              $this->byCssSelector("div#sformulaire form div.formControls input.om-button")->click();sleep(1);
2838          $this->verifynoerrors();              // On vérifie qu'il n'y ait pas d'erreur
2839          //On vérifie que le pétitionnaire s'est bien ajouté              $this->verifynoerrors();
2840          // On vérifie le message              //On vérifie que le pétitionnaire s'est bien ajouté
2841          $this->assertContains("Vos modifications ont bien été enregistrées.",$this->byCssSelector("#sousform-petitionnaire .message")->text());              // On vérifie le message
2842          // On clique sur le bouton retour              $this->assertContains("Vos modifications ont bien été enregistrées.",$this->byCssSelector("#sousform-petitionnaire .message")->text());
2843          $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);              // On clique sur le bouton retour
2844          // On vérifie que le text est présent              $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);
2845          $this->assertContains($nom_petit,$this->byCssSelector("#petitionnaire_principal_delegataire .synthese_demandeur")->text());              // On vérifie que le text est présent
2846                $this->assertContains($nom_petit,$this->byCssSelector("#petitionnaire_principal_delegataire .synthese_demandeur")->text());
2847            }
2848          // On clique sur ajouter          // On clique sur ajouter
2849          $this->byXPath("//input[@value='Ajouter']")->click();          $this->byXPath("//input[@value='Ajouter']")->click();
2850          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
# Line 2386  class Instruction extends Base2TestCase Line 2856  class Instruction extends Base2TestCase
2856              preg_match('/(PC|AT)[0-9 ]*(P0)/', $this->byCssSelector("#tabs-1 .message")->text(), $dossier);              preg_match('/(PC|AT)[0-9 ]*(P0)/', $this->byCssSelector("#tabs-1 .message")->text(), $dossier);
2857          }          }
2858          elseif ($type===2){          elseif ($type===2){
2859              preg_match('/(PC|AT)[0-9 ]*(DT01)/', $this->byCssSelector("#tabs-1 .message")->text(), $dossier);              preg_match('/(PC|AT)[0-9 ]*[A-Z]*(0)[1-9]{1}/', $this->byCssSelector("#tabs-1 .message")->text(), $dossier);
2860          }          }
2861          else{          else{
2862              preg_match('/(PC|AT)[0-9 ]*[A-Z]*(0)[1-9]{1}/', $this->byCssSelector("#tabs-1 .message")->text(), $dossier);              preg_match('/(PC|AT)[0-9 ]*[A-Z]*(0)[1-9]{1}/', $this->byCssSelector("#tabs-1 .message")->text(), $dossier);
# Line 2468  class Instruction extends Base2TestCase Line 2938  class Instruction extends Base2TestCase
2938          // 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é
2939          $this->verifyNoErrors();          $this->verifyNoErrors();
2940          //On récupère la valeur actuelle du paramètre          //On récupère la valeur actuelle du paramètre
2941          $parametre = trim($this->byId("valeur")->value());          $parametre = trim($this->byId("valeur")->attribute('value'));
2942          //On vide le champ          //On vide le champ
2943          $this->byId("valeur")->clear();          $this->byId("valeur")->clear();
2944          //On change la valeur du paramètre          //On change la valeur du paramètre
# Line 2544  class Instruction extends Base2TestCase Line 3014  class Instruction extends Base2TestCase
3014          $this->verifyNoErrors();          $this->verifyNoErrors();
3015          $this->assertContains($etat, $this->byCssSelector("#sousform-dossier_autorisation")->text());          $this->assertContains($etat, $this->byCssSelector("#sousform-dossier_autorisation")->text());
3016      }      }
3017        
3018        public function test_18_verification_references_cadastrales(){
3019            
3020            
3021            //{{{ On ajoute un nouveau dossier }}}
3022            // On se connecte à l'application
3023            $this->login("guichet", "guichet");
3024            // On clique sur le menu "Nouveau Dossier"
3025            $this->byLinkText("Nouveau Dossier")->click();
3026            // On vérifie qu'il n'y ait pas d'erreur
3027            $this->verifynoerrors();
3028            // On vérifie le nom de l'onglet
3029            $this->assertEquals("Demande", $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());
3030            // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"
3031            $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByLabel("Permis de construire pour une maison individuelle et / ou ses annexes");
3032            // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"
3033            $this->select($this->byId("demande_type"))->selectOptionByLabel("Dépôt Initial");
3034            // On clique pour ajouter un pétitionnaire principale
3035            $this->byId("add_petitionnaire_principal")->click();
3036            // On remplit le champ
3037            $this->byId("particulier_nom")->value("DURAND");
3038            // On remplit le champ
3039            $this->byId("particulier_prenom")->value("MICKAEL");
3040            // On clique sur ajouter
3041            $this->byCssSelector("div#sformulaire form div.formControls input.om-button")->click();sleep(1);
3042            // On vérifie qu'il n'y ait pas d'erreur
3043            $this->verifynoerrors();
3044            // On vérifie le message
3045            $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#sousform-petitionnaire .message")->text());
3046            // On clique sur le bouton retour
3047            $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);
3048            // On vérifie que le text est présent
3049            $this->assertRegExp("/^[\s\S]*DURAND MICKAEL[\s\S]*$/",$this->byCssSelector("#petitionnaire_principal_delegataire .synthese_demandeur")->text());
3050            // On clique sur ajouter
3051            $this->byXPath("//input[@value='Ajouter']")->click();
3052            // On vérifie qu'il n'y ait pas d'erreur
3053            $this->verifynoerrors();
3054            // On vérifie le message
3055            $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°[\s\S]*$/",$this->byCssSelector(".message")->text());
3056            // Récupération du numéro de dossier
3057            preg_match('/(PC)[0-9 ]*(P0)/', $this->byCssSelector(".message .text")->text(), $dossier);
3058            $dossier_libelle = $dossier[0];
3059            $dossier = str_replace(' ', '', $dossier_libelle);
3060            //On se déconnecte
3061            $this->deconnect();
3062            
3063            //{{{ On modifie les références cadastrales }}}
3064            // On se connecte en tant que "instr"
3065            $this->login("instr", "instr");
3066            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
3067            $this->verifyNoErrors();
3068            // On clique sur le lien "Mes encours" dans le menu
3069            $this->byLinkText("Recherche")->click();
3070            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
3071            $this->verifyNoErrors();
3072            $this->byId("dossier")->value($dossier);
3073            $this->byName("advanced-search-submit")->click();
3074            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
3075            $this->verifyNoErrors();
3076            // On clique sur le dossier dernièrement créé
3077            $this->byLinkText($dossier_libelle)->click();
3078            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
3079            $this->verifyNoErrors();
3080            //On clique sur Modifier
3081            $this->byClassName("edit-16")->click();
3082            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
3083            $this->verifyNoErrors();
3084            // On modifie les références cadastrales
3085            
3086            //On déplie le fieldset
3087            $this->byCssSelector("#fieldset-form-dossier_instruction-localisation-du-terrain legend")->click();
3088            sleep(1);
3089            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
3090            $this->verifyNoErrors();
3091            //On saisit les références cadastrale
3092            $this->byCssSelector("input.reference_cadastrale_custom_field:nth-child(1)")->value("001");
3093            $this->byCssSelector("input.reference_cadastrale_custom_field:nth-child(2)")->value("DC");
3094            // On valide le formulaire
3095            $this->byXPath("//input[@value='Modifier']")->click();
3096            //Un alert javascript doit apparaître, on vérifie le message
3097            $this->assertEquals("Les références cadastrales saisies sont incorrectes. Veuillez les corriger.", $this->alertText());
3098            // On valide l'alert
3099            $this->acceptAlert();sleep(1);
3100            //On ajoute la référence
3101            $this->byCssSelector("input.reference_cadastrale_custom_field:nth-child(3)")->value("0015");
3102            //On valide le formulaire
3103            $this->byXPath("//input[@value='Modifier']")->click();
3104        }
3105  }  }
3106    
3107  ?>  ?>

Legend:
Removed from v.2896  
changed lines
  Added in v.3367

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26