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