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

Diff of /trunk/tests/testGuichetUnique.php

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

revision 2120 by softime, Thu Aug 1 14:26:30 2013 UTC revision 2384 by nhaye, Fri Oct 11 09:23:27 2013 UTC
# Line 60  class GuichetUnique extends Base2TestCas Line 60  class GuichetUnique extends Base2TestCas
60          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
61          $this->verifynoerrors();          $this->verifynoerrors();
62          // On vérifie le message          // On vérifie le message
63          $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("BODY")->text());          $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#sousform-petitionnaire .message")->text());
64          // On clique sur le bouton retour          // On clique sur le bouton retour
65          $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);          $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);
66          // On vérifie que le text est présent          // On vérifie que le text est présent
67          $this->assertRegExp("/^[\s\S]*DURAND MICKAEL[\s\S]*$/",$this->byCssSelector("BODY")->text());          $this->assertRegExp("/^[\s\S]*DURAND MICKAEL[\s\S]*$/",$this->byCssSelector("#petitionnaire_principal_delegataire .synthese_demandeur")->text());
68          // On clique sur ajouter          // On clique sur ajouter
69          $this->byXPath("//input[@value='Ajouter']")->click();          $this->byXPath("//input[@value='Ajouter']")->click();
70          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
71          $this->verifynoerrors();          $this->verifynoerrors();
72          // On vérifie le message          // On vérifie le message
73          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 13 00001[\s\S]*$/",$this->byCssSelector("BODY")->text());          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 13 00001[\s\S]*$/",$this->byCssSelector(".message")->text());
74          // On clique          // On clique
75          $this->byCssSelector("a.lien")->click();sleep(5);          $this->byCssSelector("a.lien")->click();sleep(5);
76          // Liste les fenêtres          // Liste les fenêtres
# Line 96  class GuichetUnique extends Base2TestCas Line 96  class GuichetUnique extends Base2TestCas
96      }      }
97    
98      /**      /**
99         * Test l'ajout d'une demande et de création d'une nouvelle sequence
100         */
101        public function testAjoutDemandeNouvelleSequence() {
102    
103            // On se connecte à l'application
104            $this->login("guichet", "guichet");
105            // On clique sur le menu "Nouveau Dossier"
106            $this->byLinkText("Nouveau Dossier")->click();
107            // On vérifie qu'il n'y ait pas d'erreur
108            $this->verifynoerrors();
109            // On vérifie le nom de l'onglet
110            $this->assertEquals("Demande", $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());
111            // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"
112            $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByLabel("Permis de construire pour une maison individuelle et / ou ses annexes");
113            // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"
114            $this->select($this->byId("demande_type"))->selectOptionByLabel("Dépôt Initial");
115            // Modification de la date
116            $this->byId("date_demande")->clear();
117            $this->acceptAlert();
118            $this->byId("date_demande")->value("10/10/2014");
119            // On clique pour ajouter un pétitionnaire principale
120            $this->byId("add_petitionnaire_principal")->click();
121            // On remplit le champ
122            $this->byId("particulier_nom")->value("DURAND");
123            // On remplit le champ
124            $this->byId("particulier_prenom")->value("MICKAEL");
125            // On remplit le champ
126            $this->byId("particulier_date_naissance")->value("03/01/1956");
127            // On remplit le champ
128            $this->byId("particulier_commune_naissance")->value("LILLE");
129            // On remplit le champ
130            $this->byId("particulier_departement_naissance")->value("NORD");
131            // On remplit le champ
132            $this->byId("numero")->value("12");
133            // On remplit le champ
134            $this->byId("voie")->value("RUE DE LA LOI");
135            // On remplit le champ
136            $this->byId("complement")->value("APPT 12");
137            // On remplit le champ
138            $this->byId("localite")->value("MARSEILLE");
139            // On remplit le champ
140            $this->byId("code_postal")->value("13012");
141            // On remplit le champ
142            $this->byId("telephone_fixe")->value("0404040404");
143            // On clique sur ajouter
144            $this->byCssSelector("div#sformulaire form div.formControls input.om-button")->click();sleep(1);
145            // On vérifie qu'il n'y ait pas d'erreur
146            $this->verifynoerrors();
147            // On vérifie le message
148            $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#sousform-petitionnaire .message")->text());
149            // On clique sur le bouton retour
150            $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);
151            // On vérifie que le text est présent
152            $this->assertRegExp("/^[\s\S]*DURAND MICKAEL[\s\S]*$/",$this->byCssSelector("#petitionnaire_principal_delegataire .synthese_demandeur")->text());
153            // On clique sur ajouter
154            $this->byXPath("//input[@value='Ajouter']")->click();
155            // On vérifie qu'il n'y ait pas d'erreur
156            $this->verifynoerrors();
157            // On vérifie le message
158            $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 14 00001[\s\S]*$/",$this->byCssSelector(".message")->text());
159            // On se déconnecte
160            $this->logout();
161        }
162        
163        /**
164       * Test l'ajout d'une demande avec un instructeur       * Test l'ajout d'une demande avec un instructeur
165       */       */
166      public function testAjoutDemandeInitialInstructeur() {      public function testAjoutDemandeInitialInstructeur() {
# Line 141  class GuichetUnique extends Base2TestCas Line 206  class GuichetUnique extends Base2TestCas
206          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
207          $this->verifynoerrors();          $this->verifynoerrors();
208          // On vérifie le message          // On vérifie le message
209          $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("BODY")->text());          $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("form div.message")->text());
210          // On clique sur le bouton retour          // On clique sur le bouton retour
211          $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);          $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);
212          // On vérifie que le text est présent          // On vérifie que le text est présent
213          $this->assertRegExp("/^[\s\S]*DURAND MICKAEL[\s\S]*$/",$this->byCssSelector("BODY")->text());          $this->assertRegExp("/^[\s\S]*DURAND MICKAEL[\s\S]*$/",$this->byCssSelector("#petitionnaire_principal_delegataire .synthese_demandeur")->text());
214          // On clique sur ajouter          // On clique sur ajouter
215          $this->byXPath("//input[@value='Ajouter']")->click();          $this->byXPath("//input[@value='Ajouter']")->click();
216          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
217          $this->verifynoerrors();          $this->verifynoerrors();
218          // On vérifie le message          // On vérifie le message
219          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 13 00002[\s\S]*$/",$this->byCssSelector("BODY")->text());          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 13 00002[\s\S]*$/",$this->byCssSelector(".message")->text());
220          // On clique          // On clique
221          $this->byCssSelector("a.lien")->click();sleep(5);          $this->byCssSelector("a.lien")->click();sleep(5);
222          // Liste les fenêtres          // Liste les fenêtres
# Line 303  class GuichetUnique extends Base2TestCas Line 368  class GuichetUnique extends Base2TestCas
368          // 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é
369          $this->verifyNoErrors();          $this->verifyNoErrors();
370          // Vérifie le fil d'Ariane          // Vérifie le fil d'Ariane
371          $this->assertEquals("Guichet Unique > Nouvelle Demande > Dossier Existant > PC 013055 13 00001M1", $this->byXPath("//div[3]/div/h2")->text());          $this->assertEquals("Guichet Unique > Nouvelle Demande > Dossier Existant > PC 013055 13 00001M01", $this->byXPath("//div[3]/div/h2")->text());
372          // On choisis le type de demande          // On choisis le type de demande
373          $this->select($this->byId("demande_type"))->selectOptionByLabel("Demande de modification");          $this->select($this->byId("demande_type"))->selectOptionByLabel("Demande de modification");
374          // On clique sur ajouter          // On clique sur ajouter
# Line 311  class GuichetUnique extends Base2TestCas Line 376  class GuichetUnique extends Base2TestCas
376          // 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é
377          $this->verifyNoErrors();          $this->verifyNoErrors();
378          // On vérifie le message          // On vérifie le message
379          $this->assertRegExp("/^[\s\S]*Création du dossier d'instruction n°PC 013055 13 00001M2[\s\S]*$/",$this->byCssSelector("BODY")->text());          $this->assertRegExp("/^[\s\S]*Création du dossier d'instruction n°PC 013055 13 00001M02[\s\S]*$/",$this->byCssSelector("BODY")->text());
380          // On vérifie que le répertoire s'est crée          // On vérifie que le répertoire s'est crée
381          $this->assertTrue(file_exists("../trs/numerisation/Todo/PC0130551300001.M1"));          $this->assertTrue(file_exists("../trs/numerisation/Todo/PC0130551300001.M02"));
382          // On se déconnecte          // On se déconnecte
383          $this->logout();          $this->logout();
384                    
# Line 402  class GuichetUnique extends Base2TestCas Line 467  class GuichetUnique extends Base2TestCas
467          $this->window($windows[1]);          $this->window($windows[1]);
468          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
469          $this->verifynoerrors();          $this->verifynoerrors();
470          // On vérifie que le text est présent          // On vérifie que le text est
471            // présent
472          $this->assertRegExp("/^[\s\S]*ATTESTATION D'AFFICHAGE REGLEMENTAIRE[\s\S]*$/",$this->source());          $this->assertRegExp("/^[\s\S]*ATTESTATION D'AFFICHAGE REGLEMENTAIRE[\s\S]*$/",$this->source());
473          // On ferme la fenêtre          // On ferme la fenêtre
474          $this->closeWindow();          $this->closeWindow();
# Line 507  class GuichetUnique extends Base2TestCas Line 573  class GuichetUnique extends Base2TestCas
573          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
574          $this->verifynoerrors();          $this->verifynoerrors();
575          // On vérifie le message          // On vérifie le message
576          $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("BODY")->text());          $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#sousform-petitionnaire .message")->text());
577          // On clique sur le bouton retour          // On clique sur le bouton retour
578          $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);          $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);
579          // On vérifie que le text est présent          // On vérifie que le text est présent
580          $this->assertRegExp("/^[\s\S]*DURAND MICKAEL[\s\S]*$/",$this->byCssSelector("BODY")->text());          $this->assertRegExp("/^[\s\S]*DURAND MICKAEL[\s\S]*$/",$this->byCssSelector("#petitionnaire_principal_delegataire .synthese_demandeur")->text());
581          // On clique sur ajouter          // On clique sur ajouter
582          $this->byXPath("//input[@value='Ajouter']")->click();          $this->byXPath("//input[@value='Ajouter']")->click();
583          // On vérifie qu'il n'y ait pas d'erreur          // On vérifie qu'il n'y ait pas d'erreur
584          $this->verifynoerrors();          $this->verifynoerrors();
585          // On vérifie le message          // On vérifie le message
586          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 13 00003[\s\S]*$/",$this->byCssSelector("BODY")->text());          $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 13 00003[\s\S]*$/",$this->byCssSelector(".message")->text());
587          // On clique          // On clique
588          $this->byCssSelector("a.lien")->click();sleep(5);          $this->byCssSelector("a.lien")->click();sleep(5);
589          // Liste les fenêtres          // Liste les fenêtres
# Line 560  class GuichetUnique extends Base2TestCas Line 626  class GuichetUnique extends Base2TestCas
626          $this->logout();          $this->logout();
627      }      }
628    
629        /**
630         * Active l'option sig avec la valeur nécessaire pour la suite des tests
631         */
632        public function test_active_option_sig() {
633    
634            // On se connecte en tant que "admin"
635            $this->login("admin", "admin");
636            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
637            $this->verifyNoErrors();
638            // On clique sur le lien "Administration" dans le menu
639            $this->byLinkText("Administration")->click();
640            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
641            $this->verifyNoErrors();
642            // // On clique sur le lien "Paramètre" dans le menu
643            $this->byLinkText("Paramètre")->click();
644            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
645            $this->verifyNoErrors();
646            // On remplis le champs de recherche simple
647            $this->byCssSelector("input[name='recherche']")->value('option_sig');
648            // On clique sur le bouton recherche
649            $this->byCssSelector(".ui-button")->click();
650            // On clique sur le résultat
651            $this->byLinkText("option_sig")->click();
652            // On clique sur le bouton "Modifier"
653            $this->byId('action-form-om_parametre-modifier')->click();
654            // On change la valeur par "sig_externe"
655            $this->byId('valeur')->clear();
656            $this->byId('valeur')->value('sig_externe');
657            // On valide la modification
658            $this->byCssSelector("input[value='Modifier']")->click();
659            // On vérifie le message de validation
660            $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#tabs-1 .message")->text());
661            // On clique sur le bouton 'Retour'
662            $this->byLinkText("Retour")->click();
663            // On vérifie les nouvelles données
664            $this->assertEquals("sig_externe", $this->byId("valeur")->text());
665            // On se déconnecte
666            $this->logout();
667        }
668    
669        /**
670         * Test l'ajout d'une demande initial en utilisant les références cadastrales
671         * pour récupérer l'adresse
672         */
673        public function testAjoutDemandeInitialReferenceCadastrale() {
674    
675            // On se connecte à l'application
676            $this->login("guichet", "guichet");
677            // On clique sur le menu "Nouveau Dossier"
678            $this->byLinkText("Nouveau Dossier")->click();
679            // On vérifie qu'il n'y ait pas d'erreur
680            $this->verifynoerrors();
681            // On vérifie le nom de l'onglet
682            $this->assertEquals("Demande", $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());
683            // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"
684            $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByLabel("Permis de construire pour une maison individuelle et / ou ses annexes");
685            // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"
686            $this->select($this->byId("demande_type"))->selectOptionByLabel("Dépôt Initial");
687            // XXX Problème de javascript seulement dans cette fonction
688            // Les alerts ne passent pas lorsque le focus n'est pas sur le
689            // navigateur
690            //On saisie des références cadastrales inccorect
691            // $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->value("aa");
692            // // On change le focus pour faire apparaitre le message
693            // $this->byId('date_demande')->value(date('d/m/Y'));
694            // sleep(5);
695            // // Message d'erreur concernant le numéro de quartier
696            // $this->assertEquals("Vous ne devez saisir que des nombres entiers", $this->alertText());
697            // $this->acceptAlert();
698            // $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->value("11");
699            // // On change le focus pour faire apparaitre le message
700            // $this->byId('date_demande')->value(date('d/m/Y'));
701            // sleep(5);
702            // // Message d'erreur concernant la section
703            // $this->assertEquals("Vous ne devez saisir que des lettres dans ce champs.", $this->alertText());
704            // $this->acceptAlert();
705            // $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->value("bb");
706            // // On change le focus pour faire apparaitre le message
707            // $this->byId('date_demande')->value(date('d/m/Y'));
708            // sleep(5);
709            // // Message d'erreur concernant le numéro de parcelle
710            // $this->assertEquals("Vous ne devez saisir que des nombres entiers", $this->alertText());
711            // $this->acceptAlert();
712            //On saisie les références cadastrales
713            // $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->value("1");
714            // $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->value("dc");
715            // $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->value("15");
716            // XXX Renplace les valeurs juste au dessus qui devraient se mettre au
717            // bon format automatiquement grâce au javascript
718            $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->value("001");
719            $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->value("DC");
720            $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->value("0015");
721            //On clique sur le bouton de recherche "Cadastrale = > Adresse"
722            $this->byId("cad-adr-them")->click();
723            sleep(1);
724            // On vérifie que le format des champs est mise à jour automatiquement
725            $this->assertEquals("001", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->value());
726            $this->assertEquals("DC", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->value());
727            $this->assertEquals("0015", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->value());
728            //On verifie l'adresse
729            $this->assertEquals("0075", $this->byId("terrain_adresse_voie_numero")->value());
730            $this->assertEquals("TRA DE LA DOMINIQUE", $this->byId("terrain_adresse_voie")->value());
731            $this->assertEquals("13011", $this->byId("terrain_adresse_code_postal")->value());
732            $this->assertEquals("MARSEILLE", $this->byId("terrain_adresse_localite")->value());
733            // On valide le formulaire
734            $this->byXPath("//input[@value='Ajouter']")->click();
735            // On vérifie le message d'erreur
736            $this->assertRegExp("/^[\s\S]*SAISIE NON ENREGISTRÉE[\s\S]*$/", $this->byCssSelector(".message")->text());
737            sleep(1);
738            // On vérifie que les références cadastrales soient toujours affiché
739            $this->assertEquals("001", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->value());
740            $this->assertEquals("DC", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->value());
741            $this->assertEquals("0015", $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->value());        
742            //On saisie les références cadastrales
743            $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->clear();
744            $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->clear();
745            $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->clear();
746            //On clique sur le bouton de recherche "Cadastrale = > Adresse"
747            $this->byId("cad-adr-them")->click();
748            //On valide le message d'erreur
749            $this->assertEquals('Aucune référence cadastrale fournie', $this->alertText());
750            $this->acceptAlert();
751            // On clique pour ajouter un pétitionnaire principale
752            $this->byId("add_petitionnaire_principal")->click();
753            // On remplit le champ
754            $this->byId("particulier_nom")->value("DURAND");
755            // On remplit le champ
756            $this->byId("particulier_prenom")->value("MICKAEL");
757            // On remplit le champ
758            $this->byId("particulier_date_naissance")->value("03/01/1956");
759            // On remplit le champ
760            $this->byId("particulier_commune_naissance")->value("LILLE");
761            // On remplit le champ
762            $this->byId("particulier_departement_naissance")->value("NORD");
763            // On remplit le champ
764            $this->byId("numero")->value("12");
765            // On remplit le champ
766            $this->byId("voie")->value("RUE DE LA LOI");
767            // On remplit le champ
768            $this->byId("complement")->value("APPT 12");
769            // On remplit le champ
770            $this->byId("localite")->value("MARSEILLE");
771            // On remplit le champ
772            $this->byId("code_postal")->value("13012");
773            // On remplit le champ
774            $this->byId("telephone_fixe")->value("0404040404");
775            // On clique sur ajouter
776            $this->byCssSelector("div#sformulaire form div.formControls input.om-button")->click();sleep(1);
777            // On vérifie qu'il n'y ait pas d'erreur
778            $this->verifynoerrors();
779            // On vérifie le message
780            $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#sousform-petitionnaire .message")->text());
781            // On clique sur le bouton retour
782            $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);
783            // On vérifie que le text est présent
784            $this->assertRegExp("/^[\s\S]*DURAND MICKAEL[\s\S]*$/",$this->byCssSelector("#petitionnaire_principal_delegataire .synthese_demandeur")->text());
785            // On clique sur ajouter
786            $this->byXPath("//input[@value='Ajouter']")->click();
787            // On vérifie qu'il n'y ait pas d'erreur
788            $this->verifynoerrors();
789            // On vérifie le message
790            $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°PC 013055 13 00004[\s\S]*$/",$this->byCssSelector(".message")->text());
791            // On clique
792            $this->byCssSelector("a.lien")->click();sleep(5);
793            // Liste les fenêtres
794            $windows = $this->windowHandles();
795            // Change la fenêtre
796            $this->window($windows[1]);
797            // On vérifie qu'il n'y ait pas d'erreur
798            $this->verifynoerrors();
799            // On vérifie que le text est présent
800            $this->assertRegExp("/^[\s\S]*RECEPISSE DE DEPOT[\s\S]*$/",$this->source());
801            // On ferme la fenêtre
802            $this->closeWindow();
803            // On change le focus de la fenêtre
804            $this->window($windows[0]);
805            // On clique sur le bouton retour
806            $this->byLinkText("Retour")->click();
807            // On vérifie qu'il n'y ait pas d'erreur
808            $this->verifynoerrors();
809            // On vérifie que le répertoire s'est crée
810            $this->assertTrue(file_exists("../trs/numerisation/Todo/PC0130551300004.P0"));
811            // On se déconnecte
812            $this->logout();
813        }
814        
815        /*
816         * Cette fonction va tester l'affectation automatique des instructeurs aux
817         * dossiers d'instruction.
818         * Quatre cas sont possibles :
819         * - Aucun instructeur ne correspond,  ;
820         * - Un instructeur joker correspond,  ;
821         * - Un instructeur correspond, .
822         */
823        function testAffectationAutomatique(){
824            
825            // On se connecte à l'application
826            $this->login("guichet", "guichet");
827            //Ajout d'un dossier d'instructeur avec affectation d'aucun instructeur
828            $this->ajoutDossierAffectationAutomatique("801", "A", "0001", "Permis de construire comprenant ou non des démolitions", " -");
829            
830            //Ajout d'un dossier d'instructeur avec affectation d'un instructeur
831            //joker avec seulement le type de dossier d'autorisation détaillé de
832            //renseigné
833            $this->ajoutDossierAffectationAutomatique("806", "A", "0001", "Permis de construire pour une maison individuelle et / ou ses annexes", "Louis Laurent");
834            
835            //Ajout d'un dossier d'instructeur avec affectation du seul instructeur
836            //correspondant parfaitement aux critères
837            $this->ajoutDossierAffectationAutomatique("801", "A", "0001", "Permis de construire pour une maison individuelle et / ou ses annexes", "Pierre Martin");
838            // On se déconnecte
839            $this->logout();
840        }
841        
842        /**
843         * Ajoute un dossier d'instruction
844         * @param string $reference_cadastrale_quartier Le quartier de la référence
845         *               cadastrale du dossier
846         * @param string $reference_cadastrale_section La section de la référence
847         *               cadastrale du dossier
848         * @param string $reference_cadastrale_parcelle La parcelle de la référence
849         *               cadastrale du dossier
850         * @param string $datd dossier d'autorisation type détaillé
851         * @param string $instructeur le nom de l'instructeur
852         *
853         * @return boolean
854         */
855        function ajoutDossierAffectationAutomatique($reference_cadastrale_quartier,
856            $reference_cadastrale_section, $reference_cadastrale_parcelle,$datd,
857            $instructeur){
858            
859            //On affiche le tableau de bord
860            $this->byLinkText("Tableau de bord")->click();
861            // On clique sur le menu "Nouveau Dossier"
862            $this->byLinkText("Nouveau Dossier")->click();
863            // On vérifie qu'il n'y ait pas d'erreur
864            $this->verifynoerrors();
865            // On vérifie le nom de l'onglet
866            $this->assertEquals("Demande", $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());
867            // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"
868            $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByLabel($datd);
869            // On selectionne le label "Permis de construire pour une maison individuelle et / ou ses annexes"
870            $this->select($this->byId("demande_type"))->selectOptionByLabel("Dépôt Initial");
871            //On saisie les références cadastrales
872            $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(1)")->value($reference_cadastrale_quartier);
873            $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(2)")->value($reference_cadastrale_section);
874            $this->byCssSelector(".reference_cadastrale_custom_field:nth-child(3)")->value($reference_cadastrale_parcelle);
875            //On clique sur le bouton de recherche "Cadastrale = > Adresse"
876            $this->byId("cad-adr-them")->click();
877            // On clique pour ajouter un pétitionnaire principale
878            $this->byId("add_petitionnaire_principal")->click();
879            // On remplit le champ
880            $this->byId("particulier_nom")->value("DURAND");
881            // On remplit le champ
882            $this->byId("particulier_prenom")->value("MICKAEL");
883            // On remplit le champ
884            $this->byId("particulier_date_naissance")->value("03/01/1956");
885            // On remplit le champ
886            $this->byId("particulier_commune_naissance")->value("LILLE");
887            // On remplit le champ
888            $this->byId("particulier_departement_naissance")->value("NORD");
889            // On remplit le champ
890            $this->byId("numero")->value("12");
891            // On remplit le champ
892            $this->byId("voie")->value("RUE DE LA LOI");
893            // On remplit le champ
894            $this->byId("complement")->value("APPT 12");
895            // On remplit le champ
896            $this->byId("localite")->value("MARSEILLE");
897            // On remplit le champ
898            $this->byId("code_postal")->value("13012");
899            // On remplit le champ
900            $this->byId("telephone_fixe")->value("0404040404");
901            // On clique sur ajouter
902            $this->byCssSelector("div#sformulaire form div.formControls input.om-button")->click();sleep(1);
903            // On vérifie qu'il n'y ait pas d'erreur
904            $this->verifynoerrors();
905            // On vérifie le message
906            $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#sousform-petitionnaire .message")->text());
907            // On clique sur le bouton retour
908            $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();sleep(1);
909            // On vérifie que le text est présent
910            $this->assertRegExp("/^[\s\S]*DURAND MICKAEL[\s\S]*$/",$this->byCssSelector("#petitionnaire_principal_delegataire .synthese_demandeur")->text());
911            // On clique sur ajouter
912            $this->byXPath("//input[@value='Ajouter']")->click();
913            // On vérifie qu'il n'y ait pas d'erreur
914            $this->verifynoerrors();
915            // On vérifie le message
916            $this->assertRegExp("/^[\s\S]*Création du dossier d'autorisation n°[\s\S]*$/",$this->byCssSelector(".message")->text());
917            // On clique
918            $this->byCssSelector("a.lien")->click();sleep(5);
919            // Liste les fenêtres
920            $windows = $this->windowHandles();
921            // Change la fenêtre
922            $this->window($windows[1]);
923            // On vérifie qu'il n'y ait pas d'erreur
924            $this->verifynoerrors();
925            // On vérifie que le text est présent
926            $this->assertRegExp("/^[\s\S]*Dossier suivi par  ".$instructeur."[\s\S]*$/",$this->source());
927            // On ferme la fenêtre
928            $this->closeWindow();
929            // On change le focus de la fenêtre
930            $this->window($windows[0]);
931        }
932    
933        /**
934         * Désactive l'option sig avec la valeur nécessaire
935         */
936        public function test_desactive_option_sig() {
937    
938            // On se connecte en tant que "admin"
939            $this->login("admin", "admin");
940            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
941            $this->verifyNoErrors();
942            // On clique sur le lien "Administration" dans le menu
943            $this->byLinkText("Administration")->click();
944            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
945            $this->verifyNoErrors();
946            // // On clique sur le lien "Paramètre" dans le menu
947            $this->byLinkText("Paramètre")->click();
948            // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
949            $this->verifyNoErrors();
950            // On remplis le champs de recherche simple
951            $this->byCssSelector("input[name='recherche']")->value('option_sig');
952            // On clique sur le bouton recherche
953            $this->byCssSelector(".ui-button")->click();
954            // On clique sur le résultat
955            $this->byLinkText("option_sig")->click();
956            // On clique sur le bouton "Modifier"
957            $this->byId('action-form-om_parametre-modifier')->click();
958            // On change la valeur par "aucun"
959            $this->byId('valeur')->clear();
960            $this->byId('valeur')->value('aucun');
961            // On valide la modification
962            $this->byCssSelector("input[value='Modifier']")->click();
963            // On vérifie le message de validation
964            $this->assertRegExp("/^[\s\S]*Vos modifications ont bien été enregistrées.[\s\S]*$/",$this->byCssSelector("#tabs-1 .message")->text());
965            // On clique sur le bouton 'Retour'
966            $this->byLinkText("Retour")->click();
967            // On vérifie les nouvelles données
968            $this->assertEquals("aucun", $this->byId("valeur")->text());
969            // On se déconnecte
970            $this->logout();
971        }
972  }  }
973    
974  ?>  ?>

Legend:
Removed from v.2120  
changed lines
  Added in v.2384

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26