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

Annotation of /trunk/tests/testGestionIncompletude.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2105 - (hide annotations)
Thu Jul 18 14:57:51 2013 UTC (11 years, 6 months ago) by vpihour
File size: 9187 byte(s)
Amélioration des tests pour utiliser des données plus génériques

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 vpihour 2105 var $dossier = "PC0130551200001P0";
28     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 softime 2041 // On clique sur l'onglet DI
65     $this->byId("main")->click();
66     // on rafraichis la page
67     $this->refresh();
68     // On vérifie le délai du dossier
69     $this->assertEquals("5", $this->byId('delai')->text());
70    
71     /**
72     * Envoi notification de pièces manquantes
73     */
74     // On clique sur l'onglet instruction
75     $this->byId("instruction")->click();
76     // On clique sur le + pour ajouter une instruction
77     $this->byCssSelector("#sousform-instruction .actions-max-1 a")->click();
78     // On choisi l'événement
79     $this->select($this->byId("evenement"))->selectOptionByLabel("Notification de pieces manquante [rejet]");
80     // On clique sur le bouton ajouter
81     $this->byXPath("//input[@value='Ajouter']")->click();
82     // On vérifie que l'instruction s'est bien ajouté
83     $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-instruction .message .text")->text());
84     // On clique sur le bouton retour
85     $this->byCssSelector("#sousform-instruction form a.retour")->click();
86 vpihour 2105 //On récupère le numéro de l'instruction créée
87     $this->byLinkText("Notification de pieces manquante")->click();
88     $idInstrIncompletude = $this->byCssSelector(".form-content #instruction")->text();
89 softime 2041 // On clique sur l'onglet DI
90     $this->byId("main")->click();
91     // on rafraichis la page
92     $this->refresh();
93     // On vérifie que l'état du dossier
94     $this->assertEquals("dossier incomplet", $this->byId('etat')->text());
95     // On se deconnecte
96     $this->deconnect();
97    
98     /**
99     * Retour de l’AR incomplétude
100     */
101     // on se connecte en tant que suivi
102     $this->login("suivi", "suivi");
103     // On clique sur le menu
104     $this->byLinkText("Mise À Jour Des Dates")->click();
105     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
106     $this->verifyNoErrors();
107     // on choisit le type de mise à jour
108     $this->select($this->byId("type_mise_a_jour"))->selectOptionByValue("date_retour_rar");
109     // on choisit la date
110     $this->byId("date")->value(date("d/m/Y"));
111     // on rentre le code barre
112 vpihour 2105 $this->byId("code_barres")->value($this->code_barres_ar_incompletude.$idInstrIncompletude);
113 softime 2041 // on clique sur le bouton valider
114     $this->byName("validation")->click();
115     // on vérifie que la mise à jour est pour le bon évenement
116     $this->assertEquals("Notification de pieces manquante", $this->byId('evenement')->text());
117     // on clique encore sur le bouton valider
118     $this->byName("validation")->click();
119     // on vérifie que la mise à jour est faite
120     $this->assertRegExp('/.*Saisie enregistrée.*/', $this->byCssSelector("#formulaire .message .text")->text());
121    
122     /**
123     * Retour de l’AR de majoration de délai consultation ABF
124     */
125     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
126     $this->verifyNoErrors();
127     // on choisit le type de mise à jour
128     $this->select($this->byId("type_mise_a_jour"))->selectOptionByValue("date_retour_rar");
129     // on choisit la date
130     $this->byId("date")->value(date("d/m/Y"));
131     // on rentre le code barre
132 vpihour 2105 $this->byId("code_barres")->value($this->code_barres_ar_abf.$idInstrAbf);
133 softime 2041 // on clique sur le bouton valider
134     $this->byName("validation")->click();
135     // on vérifie que la mise à jour est pour le bon évenement
136     $this->assertEquals("ABF recours contre avis", $this->byId('evenement')->text());
137     // on clique encore sur le bouton valider
138     $this->byName("validation")->click();
139     // on vérifie que la mise à jour est faite
140     $this->assertRegExp('/.*Saisie enregistrée.*/', $this->byCssSelector("#formulaire .message .text")->text());
141     // On se deconnecte
142     $this->deconnect();
143    
144     /**
145     * Dépôt de pièces complémentaires
146     */
147     // on se connecte à l'application
148     $this->login("instr", "instr");
149     // On clique sur le menu
150     $this->byLinkText("Recherche")->click();
151     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
152     $this->verifyNoErrors();
153     // On clique sur le dossier PC0130551200001
154     $this->byLinkText($this->dossier)->click();
155     // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
156     $this->verifyNoErrors();
157     // On clique sur l'onglet instruction
158     $this->byId("instruction")->click();
159     // on vérifie que les instruction après AR se sont ajouté
160     $this->assertRegExp("/^[\s\S]*incomplétude après accusé de réception[\s\S]*$/", $this->byCssSelector("#sousform-instruction .tab-tab")->text());
161     $this->assertRegExp("/^[\s\S]*majoration délai abf[\s\S]*$/", $this->byCssSelector("#sousform-instruction .tab-tab")->text());
162     // On clique sur le + pour ajouter une instruction
163     $this->byCssSelector("#sousform-instruction .actions-max-1 a")->click();
164     // On choisi l'événement
165     $this->select($this->byId("evenement"))->selectOptionByLabel("dépôt de pièces complémentaires [retour]");
166     // On clique sur le bouton ajouter
167     $this->byXPath("//input[@value='Ajouter']")->click();
168     // On vérifie que l'instruction s'est bien ajouté
169     $this->assertRegExp('/.*Vos modifications ont bien été enregistrées.*/', $this->byCssSelector("#sousform-instruction .message .text")->text());
170     // On clique sur le bouton retour
171     $this->byCssSelector("#sousform-instruction form a.retour")->click();
172     // On clique sur l'onglet DI
173     $this->byId("main")->click();
174     // on rafraichis la page
175     $this->refresh();
176     // on vérifie que l'état ne soit plus à incomplet
177     $this->assertTrue($this->byId('etat')->text() != "dossier incomplet");
178     // on vérifie que le délai est à 8
179     $this->assertEquals("8", $this->byId('delai')->text());
180     // on vérifie la date de complétude
181     $this->assertEquals(date("d/m/Y"), $this->byId('date_complet')->text());
182     // on vérifie la date de limite de l'instruction
183     $date_limite = date("d/m/Y", strtotime('+8 months'));
184     $this->assertEquals($date_limite, $this->byId('date_limite')->text());
185     // On se deconnecte
186     $this->logout();
187     }
188    
189     }
190     ?>

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26