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

Annotation of /trunk/tests/testGestionIncompletude.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2419 - (hide annotations)
Fri Oct 18 09:57:58 2013 UTC (11 years, 3 months ago) by nhaye
File size: 9866 byte(s)
Correction : ajout d'une finalisation de document

1 softime 2041 <?php
2     /**
3     * Fichier contenant la classe test pour l'incomplétude
4     *
5     * @package openfoncier
6     * @version SVN : $Id:
7     */
8    
9     //
10     require_once "base.php";
11    
12     /**
13     * Classe permettant de tester l'incomplétude
14     *
15     * Pour lancer le test seul, changer les données :
16     * - dossier : PC0130551200002P0
17     * - code barres de retour de l’AR incomplétude : 110000000011
18     * - code barres de retour de l’AR de majoration de délai consultation ABF : 110000000010
19     *
20     * Pour lancer le test à la fin du run_testsuite, changer les données :
21     * - dossier : PC0130551300001P0
22     * - code barres de retour de l’AR incomplétude : 110000000021
23     * - code barres de retour de l’AR de majoration de délai consultation ABF : 110000000020
24     */
25     class GestionIncompletude extends Base2TestCase {
26    
27 softime 2112 var $dossier = "PC 013055 12 00001P0";
28 vpihour 2105 var $code_barres_ar_incompletude = "1100000000";
29     var $code_barres_ar_abf = "1100000000";
30 softime 2041
31     /**
32     * Test l'incomplétude sur un dossier d'instruction
33     */
34     public function testIncompletude() {
35    
36     /**
37     * Envoi d’un courrier de majoration de délai pour consultation ABF
38     */
39     // on se connecte à l'application
40     $this->login("instr", "instr");
41     // On clique sur le menu
42     $this->byLinkText("Recherche")->click();
43     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
44     $this->verifyNoErrors();
45     // On clique sur le dossier
46     $this->byLinkText($this->dossier)->click();
47     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
48     $this->verifyNoErrors();
49     // On clique sur l'onglet instruction
50     $this->byId("instruction")->click();
51     // On clique sur le + pour ajouter une instruction
52     $this->byCssSelector("#sousform-instruction .actions-max-1 a")->click();
53     // On choisi l'événement
54     $this->select($this->byId("evenement"))->selectOptionByLabel("ABF recours contre avis [majoration]");
55     // On clique sur le bouton ajouter
56     $this->byXPath("//input[@value='Ajouter']")->click();
57     // On vérifie que l'instruction s'est bien ajouté
58     $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-instruction .message .text")->text());
59     // On clique sur le bouton retour
60     $this->byCssSelector("#sousform-instruction form a.retour")->click();
61 vpihour 2105 //On récupère le numéro de l'instruction créée
62     $this->byLinkText("ABF recours contre avis")->click();
63     $idInstrAbf = $this->byCssSelector(".form-content #instruction")->text();
64 nhaye 2419 // Finalisation du document
65     $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(3) a")->click();
66     // On vérifie le message de validation
67     $this->assertEquals('La finalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-instruction .message .text")->text());
68 softime 2041 // On clique sur l'onglet DI
69     $this->byId("main")->click();
70     // on rafraichis la page
71     $this->refresh();
72     // On vérifie le délai du dossier
73     $this->assertEquals("5", $this->byId('delai')->text());
74    
75     /**
76     * Envoi notification de pièces manquantes
77     */
78     // On clique sur l'onglet instruction
79     $this->byId("instruction")->click();
80     // On clique sur le + pour ajouter une instruction
81     $this->byCssSelector("#sousform-instruction .actions-max-1 a")->click();
82     // On choisi l'événement
83     $this->select($this->byId("evenement"))->selectOptionByLabel("Notification de pieces manquante [rejet]");
84     // On clique sur le bouton ajouter
85     $this->byXPath("//input[@value='Ajouter']")->click();
86     // On vérifie que l'instruction s'est bien ajouté
87     $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-instruction .message .text")->text());
88     // On clique sur le bouton retour
89     $this->byCssSelector("#sousform-instruction form a.retour")->click();
90 vpihour 2105 //On récupère le numéro de l'instruction créée
91     $this->byLinkText("Notification de pieces manquante")->click();
92 nhaye 2418 $idInstrIncompletude = $this->byCssSelector(".form-content #instruction")->text();
93     // Finalisation du document
94     $this->byCssSelector("#sousform-instruction .portlet-list li:nth-child(3) a")->click();
95     // On vérifie le message de validation
96     $this->assertEquals('La finalisation du document s\'est effectuée avec succès.', $this->byCssSelector("#sousform-instruction .message .text")->text());
97 softime 2041 // On clique sur l'onglet DI
98     $this->byId("main")->click();
99     // on rafraichis la page
100     $this->refresh();
101     // On vérifie que l'état du dossier
102     $this->assertEquals("dossier incomplet", $this->byId('etat')->text());
103     // On se deconnecte
104     $this->deconnect();
105    
106     /**
107     * Retour de l’AR incomplétude
108     */
109     // on se connecte en tant que suivi
110     $this->login("suivi", "suivi");
111     // On clique sur le menu
112     $this->byLinkText("Mise À Jour Des Dates")->click();
113     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
114     $this->verifyNoErrors();
115     // on choisit le type de mise à jour
116     $this->select($this->byId("type_mise_a_jour"))->selectOptionByValue("date_retour_rar");
117     // on choisit la date
118     $this->byId("date")->value(date("d/m/Y"));
119     // on rentre le code barre
120 vpihour 2105 $this->byId("code_barres")->value($this->code_barres_ar_incompletude.$idInstrIncompletude);
121 softime 2041 // on clique sur le bouton valider
122     $this->byName("validation")->click();
123     // on vérifie que la mise à jour est pour le bon évenement
124     $this->assertEquals("Notification de pieces manquante", $this->byId('evenement')->text());
125     // on clique encore sur le bouton valider
126     $this->byName("validation")->click();
127     // on vérifie que la mise à jour est faite
128     $this->assertRegExp('/.*Saisie enregistrée.*/', $this->byCssSelector("#formulaire .message .text")->text());
129    
130     /**
131     * Retour de l’AR de majoration de délai consultation ABF
132     */
133     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
134     $this->verifyNoErrors();
135     // on choisit le type de mise à jour
136     $this->select($this->byId("type_mise_a_jour"))->selectOptionByValue("date_retour_rar");
137     // on choisit la date
138     $this->byId("date")->value(date("d/m/Y"));
139     // on rentre le code barre
140 vpihour 2105 $this->byId("code_barres")->value($this->code_barres_ar_abf.$idInstrAbf);
141 softime 2041 // on clique sur le bouton valider
142     $this->byName("validation")->click();
143     // on vérifie que la mise à jour est pour le bon évenement
144     $this->assertEquals("ABF recours contre avis", $this->byId('evenement')->text());
145     // on clique encore sur le bouton valider
146     $this->byName("validation")->click();
147     // on vérifie que la mise à jour est faite
148     $this->assertRegExp('/.*Saisie enregistrée.*/', $this->byCssSelector("#formulaire .message .text")->text());
149     // On se deconnecte
150     $this->deconnect();
151    
152     /**
153     * Dépôt de pièces complémentaires
154     */
155     // on se connecte à l'application
156     $this->login("instr", "instr");
157     // On clique sur le menu
158     $this->byLinkText("Recherche")->click();
159     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
160     $this->verifyNoErrors();
161     // On clique sur le dossier PC0130551200001
162     $this->byLinkText($this->dossier)->click();
163     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
164     $this->verifyNoErrors();
165     // On clique sur l'onglet instruction
166     $this->byId("instruction")->click();
167     // on vérifie que les instruction après AR se sont ajouté
168     $this->assertRegExp("/^[\s\S]*incomplétude après accusé de réception[\s\S]*$/", $this->byCssSelector("#sousform-instruction .tab-tab")->text());
169     $this->assertRegExp("/^[\s\S]*majoration délai abf[\s\S]*$/", $this->byCssSelector("#sousform-instruction .tab-tab")->text());
170     // On clique sur le + pour ajouter une instruction
171     $this->byCssSelector("#sousform-instruction .actions-max-1 a")->click();
172     // On choisi l'événement
173     $this->select($this->byId("evenement"))->selectOptionByLabel("dépôt de pièces complémentaires [retour]");
174     // On clique sur le bouton ajouter
175     $this->byXPath("//input[@value='Ajouter']")->click();
176     // On vérifie que l'instruction s'est bien ajouté
177     $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-instruction .message .text")->text());
178     // On clique sur le bouton retour
179     $this->byCssSelector("#sousform-instruction form a.retour")->click();
180     // On clique sur l'onglet DI
181     $this->byId("main")->click();
182     // on rafraichis la page
183     $this->refresh();
184     // on vérifie que l'état ne soit plus à incomplet
185     $this->assertTrue($this->byId('etat')->text() != "dossier incomplet");
186     // on vérifie que le délai est à 8
187     $this->assertEquals("8", $this->byId('delai')->text());
188     // on vérifie la date de complétude
189     $this->assertEquals(date("d/m/Y"), $this->byId('date_complet')->text());
190     // on vérifie la date de limite de l'instruction
191     $date_limite = date("d/m/Y", strtotime('+8 months'));
192     $this->assertEquals($date_limite, $this->byId('date_limite')->text());
193     // On se deconnecte
194     $this->logout();
195     }
196    
197     }
198     ?>

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26