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

Annotation of /trunk/tests/testQualification.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2751 - (hide annotations)
Tue Feb 18 19:04:57 2014 UTC (10 years, 11 months ago) by softime
File size: 7124 byte(s)
- Le qualificateur à désormais un menu 'Qualification' pour
  accéder à son tableau de bord et aux dossiers d'instruction à qualifier.
- Le qualificateur peut désormais ajouter, finaliser et dé-finaliser des
  instructions et ajouter des consultations.
- Les boutons 'Retour' sont corrigés.
- Modification des tests.

1 softime 2751 <?php
2     /**
3     * Classe de test du menu Qualification spécifique au profil qualificateur.
4     *
5     * @package openfoncier
6     * @version SVN : $Id$
7     */
8    
9     //
10     require_once "base.php";
11    
12     /**
13     *
14     */
15     class Qualification extends Base2TestCase {
16    
17     /**
18     * Test les dossiers à qualifier avec le qualificateur qui doit voir tous les
19     * dossiers dans ce cas.
20     */
21     public function test_01_dossier_qualifier() {
22    
23     // On se connecte à l'application
24     $this->login("guichet", "guichet");
25     // On clique sur le menu "Nouveau Dossier"
26     $this->byLinkText("Nouveau Dossier")->click();
27     // On vérifie qu'il n'y ait pas d'erreur
28     $this->verifynoerrors();
29     // On vérifie le nom de l'onglet
30     $this->assertEquals("Demande",
31     $this->byCssSelector("ul.ui-tabs-nav li.ui-state-default a")->text());
32     // On selectionne le label "Permis de construire pour une maison
33     // individuelle et / ou ses annexes"
34     $this->select($this->byId("dossier_autorisation_type_detaille"))->selectOptionByLabel("Permis de construire pour une maison individuelle et / ou ses annexes");
35     // On selectionne le label "Permis de construire pour une maison
36     // individuelle et / ou ses annexes"
37     $this->select($this->byId("demande_type"))->selectOptionByLabel(
38     "Dépôt Initial");
39     // On clique pour ajouter un pétitionnaire principale
40     $this->byId("add_petitionnaire_principal")->click();
41     // On remplit le champ
42     $this->byId("particulier_nom")->value("DURAND");
43     // On remplit le champ
44     $this->byId("particulier_prenom")->value("MICKAEL");
45     // On remplit le champ
46     $this->byId("particulier_date_naissance")->value("03/01/1956");
47     // On remplit le champ
48     $this->byId("particulier_commune_naissance")->value("LILLE");
49     // On remplit le champ
50     $this->byId("particulier_departement_naissance")->value("NORD");
51     // On remplit le champ
52     $this->byId("numero")->value("12");
53     // On remplit le champ
54     $this->byId("voie")->value("RUE DE LA LOI");
55     // On remplit le champ
56     $this->byId("complement")->value("APPT 12");
57     // On remplit le champ
58     $this->byId("localite")->value("MARSEILLE");
59     // On remplit le champ
60     $this->byId("code_postal")->value("13012");
61     // On remplit le champ
62     $this->byId("telephone_fixe")->value("0404040404");
63     // On clique sur ajouter
64     $this->byCssSelector(
65     "div#sformulaire form div.formControls input.om-button")->click();
66     sleep(1);
67     // On vérifie qu'il n'y ait pas d'erreur
68     $this->verifynoerrors();
69     // On vérifie le message
70     $this->assertContains("Vos modifications ont bien été enregistrées.",
71     $this->byCssSelector("#sousform-petitionnaire .message")->text());
72     // On clique sur le bouton retour
73     $this->byCssSelector("form[name=\"f2\"] > div.formControls > a.retour")->click();
74     sleep(1);
75     // On vérifie que le text est présent
76     $this->assertRegExp("/^[\s\S]*DURAND MICKAEL[\s\S]*$/",
77     $this->byCssSelector(
78     "#petitionnaire_principal_delegataire .synthese_demandeur")->text());
79     // On clique sur ajouter
80     $this->byXPath("//input[@value='Ajouter']")->click();
81     // On vérifie qu'il n'y ait pas d'erreur
82     $this->verifynoerrors();
83     // On vérifie le message
84     $this->assertContains("Création du dossier d'autorisation",
85     $this->byCssSelector(".message")->text());
86     // On récupère le numéro du dossier
87     $preg_match = preg_match('(PC.*)', $this->byCssSelector(".message")->text(),
88     $matches);
89     $dossier_autorisation = $matches[0];
90     // On clique
91     $this->byCssSelector("a.lien")->click();
92     sleep(5);
93     // Liste les fenêtres
94     $windows = $this->windowHandles();
95     // Change la fenêtre
96     $this->window($windows[1]);
97     // On vérifie qu'il n'y ait pas d'erreur
98     $this->verifynoerrors();
99     // On vérifie que le text est présent
100     $this->assertRegExp("/^[\s\S]*RECEPISSE DE DEPOT[\s\S]*$/", $this->source());
101     // On ferme la fenêtre
102     $this->closeWindow();
103     // On change le focus de la fenêtre
104     $this->window($windows[0]);
105     // On clique sur le bouton retour
106     $this->byLinkText("Retour")->click();
107     // On vérifie qu'il n'y ait pas d'erreur
108     $this->verifynoerrors();
109     // On vérifie que le répertoire s'est crée
110     $dirname = "../trs/numerisation/Todo/".str_replace(
111     " ", "", $dossier_autorisation).".P0";
112     $this->assertTrue(file_exists($dirname));
113     // On se déconnecte
114     $this->deconnect();
115    
116     // on se connecte à l'application en tant que qualificateur
117     $this->login("qualif", "qualif");
118     // On vérifie qu'il y a un dossier à qualifier
119     $this->assertRegExp("/^[\s\S]*ADS[\s\S]*$/", $this->byId("widget_15")->text());
120     // On clique sur "Voir tous mes dossiers à qualifier"
121     $this->byLinkText("Voir tous mes dossiers à qualifier")->click();
122     // On recherche le dossier
123     $this->byName("recherche")->value(
124     str_replace(' ', '', $dossier_autorisation)."P0");
125     $this->byName("s1")->click();
126     // On vérifie qu'il n'y ait pas d'erreur
127     $this->verifynoerrors();
128     // On vérifie que le DI est présent
129     $this->assertContains($dossier_autorisation,
130     $this->byId("tab-dossier_qualifier_qualificateur")->text());
131     // On clique dessus
132     $this->byLinkText($dossier_autorisation."P0")->click();
133     // On vérifie qu'il soit bien "à qualifer"
134     $this->assertEquals("Oui", $this->byId("a_qualifier")->text());
135     // On clique sur modifier
136     $this->byId("action-form-dossier_instruction-modifier")->click();
137     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
138     $this->verifyNoErrors();
139     // On décoche la case "à qualifier"
140     $this->byId("a_qualifier")->click();
141     // On valide le formulaire
142     $this->byXPath("//input[@value='Modifier']")->click();
143     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
144     $this->verifyNoErrors();
145     // On vérifie le message de validation
146     $this->assertContains("Vos modifications ont bien été enregistrées.",
147     $this->byCssSelector(".message .text")->text());
148     // On clique sur le menu "Dossier À Qualifier"
149     $this->byLinkText("Dossiers À Qualifier")->click();
150     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
151     $this->verifyNoErrors();
152     // On vérifie que le dossier n'existe plus
153     $this->assertNotContains($dossier_autorisation."P0",
154     $this->byCssSelector(
155     "#tab-dossier_qualifier_qualificateur .tab-tab")->text());
156     // On se déconnecte
157     $this->logout();
158     }
159    
160     }
161    
162     ?>

Properties

Name Value
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26