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

Contents of /trunk/tests/testREST.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3152 - (show annotations)
Mon Sep 15 14:47:44 2014 UTC (10 years, 4 months ago) by vpihour
File size: 28049 byte(s)
Correction des tests

1 <?php
2 /**
3 * Ce fichier regroupe les tests concernant le REST
4 *
5 * @package openads
6 * @version SVN : $Id$:
7 */
8
9 // Fichier nécessaire
10 require_once "../obj/utils.class.php";
11 require_once "../services/outgoing/MessageSenderRest.class.php";
12
13 /**
14 * Cette classe permet de faire des tests sur les requêtes REST
15 *
16 * Données utilisées :
17 *
18 * Fichiers dans binary_files/test_digitalizedDocument/Transfert_GED
19 *
20 * Les consultations 1 et 2
21 *
22 * Le dossier d'autorisation PC0130551200001
23 *
24 * Le dossier d'instruction PC0130551200001P0
25 *
26 */
27 class RESTTest extends PHPUnit_Framework_TestCase {
28
29 var $base_url = 'http://localhost/openads/';
30
31 /**
32 * Méthode lancée en début de traitement
33 */
34 public function setUp() {
35
36 // Instancie la timezone
37 date_default_timezone_set('Europe/Paris');
38 }
39
40 /**
41 * Méthode lancée en fin de traitement
42 */
43 public function tearDown() {
44
45 //
46 }
47
48 /**
49 * Initialisation pour session cURL
50 * @param string $url Lien
51 * @param string $request Mode de requête
52 * @param array $postfields Données à envoyer
53 * @return mixed Session cURL
54 */
55 private function init_cURL($url, $request, $postfields) {
56
57 // Initialisation session cURL
58 $curl = curl_init();
59 // Url de la page à récupérer
60 curl_setopt($curl, CURLOPT_URL, $url);
61 // Permet de récupérer le résultat au lieu de l'afficher
62 curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
63 // Démarrer un nouveau cookie de session
64 curl_setopt($curl, CURLOPT_COOKIESESSION, true);
65 // Requête REST à envoyer (par défaut à GET)
66 switch ($request) {
67 case 'POST':
68 curl_setopt($curl, CURLOPT_POST, true);
69 break;
70 case 'PUT':
71 curl_setopt($curl, CURLOPT_PUT, true);
72 break;
73 }
74
75 // Si il y a des paramètres à envoyer
76 if ($postfields != '') {
77
78 // Informations à envoyer
79 $postfields = $this->preparePostFields($curl, $postfields, $request);
80 }
81
82 // Retour de la session cURL
83 $return = curl_exec($curl);
84 // Ferme la session cURL
85 curl_close($curl);
86
87 // Message retourné par REST
88 $message = $this->getReturnMessage($return, $request);
89
90 // Retourne le message
91 return $message;
92 }
93
94 /**
95 * Prépare les paramètres à envoyer en cURL
96 * @param mixed $curl Session cURL
97 * @param array $array Tableau des paramètres
98 * @param string $request Méthode utilisée (POST/PUT)
99 */
100 private function preparePostFields($curl, $array, $request) {
101
102 // Si c'est une requête POST
103 if ($request == 'POST') {
104
105 // Génère une chaîne de requête en encodage URL
106 $return = http_build_query($array);
107
108 // Données passées en POST
109 curl_setopt($curl, CURLOPT_POSTFIELDS, $return);
110
111 // Sinon c'est une requête PUT
112 } else {
113
114 // Encode le tableau en json
115 $return = json_encode($array);
116
117 // Crée un fichier temporaire
118 $putData = tmpfile();
119 // Ecrit la chaîne dans le fichier temporaire
120 fwrite($putData, $return);
121 // Place le curseur au début du fichier
122 fseek($putData, 0);
123 // Permet de retourner des données binaires
124 curl_setopt($curl, CURLOPT_BINARYTRANSFER, true);
125 // Le fichier lu par le transfert lors du chargement
126 curl_setopt($curl, CURLOPT_INFILE, $putData);
127 // Taille du fichier en octet attendue
128 curl_setopt($curl, CURLOPT_INFILESIZE, strlen($return));
129
130 }
131
132 }
133
134 /**
135 * Retourne seulement le message du retour REST
136 * @param string $return Retour du REST
137 * @return string Message du retour
138 */
139 private function getReturnMessage($return, $request) {
140
141 // Si c'est une requête GET
142 if ($request == 'GET') {
143
144 // Retraite la chaîne
145 $return = substr($return,1,-1);
146 $return = trim($return);
147 $return = preg_replace("(\r\n|\n|\r)",'',$return);
148
149 // On retourne directement le return
150 return $return;
151 }
152
153 // Decode du json et crée un objet
154 $return = json_decode($return);
155
156 // Retourne le message du retour REST
157 return $return->message;
158
159 }
160
161 /**
162 * Test le retour d'un numéro d'arrêté
163 */
164 public function testArretesRetourNumero() {
165
166 // Lien à envoyer
167 $url = $this->base_url.'services/rest_entry.php/arretes';
168 // Mode de la requête
169 $request = 'PUT';
170 // Données à envoyer
171 $postfields = array(
172 'numero_arrete' => '21321654',
173 'numero_dossier' => 'AZ0130551200001P0',
174 'etat_transaction' => 'true',
175 'detail_erreur' => '',
176 );
177
178 // Initialisation cURL
179 $message = $this->init_cURL($url, $request, $postfields);
180
181 // On vérifie le retour de la session cURL
182 $this->assertEquals($message, 'Le numéro d\'arrêté a été mis à jour.');
183
184 //Deuxième jet pour autre message
185
186 // Initialisation cURL
187 $message = $this->init_cURL($url, $request, $postfields);
188
189 // On vérifie le retour de la session cURL
190 $this->assertEquals($message, 'Erreur : un numéro d\'arrêté existe déjà pour cette instruction');
191 }
192
193 /**
194 * Test le module user de maintenance
195 */
196 public function testMaintenanceUser() {
197
198 // Lien à envoyer
199 $url = $this->base_url.'services/rest_entry.php/maintenance';
200 // Mode de la requête
201 $request = 'POST';
202 // Données à envoyer
203 $postfields = array(
204 'module' => 'user',
205 'data' => 'NA',
206 );
207
208 // Initialisation cURL
209 $message = $this->init_cURL($url, $request, $postfields);
210
211 // On vérifie le retour de la session cURL
212 $this->assertEquals($message, 'Synchronisation terminée.');
213 }
214
215 /**
216 * Test le module consultation de maintenance
217 */
218 public function testMaintenanceConsultation() {
219
220 // Lien à envoyer
221 $url = $this->base_url.'services/rest_entry.php/maintenance';
222 // Mode de la requête
223 $request = 'POST';
224 // Données à envoyer
225 $postfields = array(
226 'module' => 'consultation',
227 'data' => 'NA',
228 );
229
230 // Initialisation cURL
231 $message = $this->init_cURL($url, $request, $postfields);
232
233 // On vérifie le retour de la session cURL
234 $this->assertEquals($message, '2 consultations mise(s) à jour.');
235
236 //Deuxième jet pour autre message
237
238 // Initialisation cURL
239 $message = $this->init_cURL($url, $request, $postfields);
240
241 // On vérifie le retour de la session cURL
242 $this->assertEquals($message, 'Aucune mise a jour.');
243 }
244
245 /**
246 * Test le module instruction de maintenance
247 */
248 public function testMaintenanceInstruction() {
249
250 // Lien à envoyer
251 $url = $this->base_url.'services/rest_entry.php/maintenance';
252 // Mode de la requête
253 $request = 'POST';
254 // Données à envoyer
255 $postfields = array(
256 'module' => 'instruction',
257 'data' => 'NA',
258 );
259
260 // Initialisation cURL
261 $message = $this->init_cURL($url, $request, $postfields);
262
263 // On vérifie le retour de la session cURL
264 $this->assertEquals($message, '1 dossier(s) mis à jour.');
265 }
266
267 /**
268 * Test le module import de maintenance
269 */
270 public function testMaintenanceImport() {
271
272 // Création du dossier PC0130551200001.P0 dans le dossier de
273 // numérisation
274 mkdir('../trs/numerisation/Todo/PC0130551200001.P0/');
275 chmod('../trs/numerisation/Todo/PC0130551200001.P0/', 0777);
276 // Récupération du document
277 copy('binary_files/20091106AUTPCP.pdf', '../trs/numerisation/Todo/PC0130551200001.P0/20091106AUTPCP.pdf');
278
279 // Lien à envoyer
280 $url = $this->base_url.'services/rest_entry.php/maintenance';
281 // Mode de la requête
282 $request = 'POST';
283 // Données à envoyer
284 $postfields = array(
285 'module' => 'import',
286 'data' => array(
287 'Todo' => '../trs/numerisation/Todo',
288 'Done' => '../trs/numerisation/Done'
289 ),
290 );
291
292 // Initialisation cURL
293 $message = $this->init_cURL($url, $request, $postfields);
294
295 // On vérifie le retour de la session cURL
296 $this->assertEquals($message, 'Tous les documents ont été traités');
297
298 //Deuxième jet pour autre message
299
300 // Initialisation cURL
301 $message = $this->init_cURL($url, $request, $postfields);
302
303 // On vérifie le retour de la session cURL
304 $this->assertEquals($message, 'Aucun document à traiter');
305 }
306
307 /**
308 * Test le module purge de maintenance
309 */
310 public function testMaintenancePurge() {
311
312 // Lien à envoyer
313 $url = $this->base_url.'services/rest_entry.php/maintenance';
314 // Mode de la requête
315 $request = 'POST';
316 // Données à envoyer
317 $postfields = array(
318 'module' => 'purge',
319 'data' => array(
320 'dossier' => '../trs/numerisation/Done',
321 'nombre_de_jour' => ''
322 ),
323 );
324
325 // Initialisation cURL
326 $message = $this->init_cURL($url, $request, $postfields);
327
328 // On vérifie le retour de la session cURL
329 $this->assertEquals($message, 'Tous les documents ont ete traites');
330
331 // Supprime les dossiers créent pour les tests testMaintenanceImport()
332 // et testMaintenancePurge()
333 rmdir('../trs/numerisation/Done/PC0130551200001.P0');
334 rmdir('../trs/numerisation/Todo/PC0130551200001.P0');
335 }
336
337 /**
338 * Permet de tester le service de mise à jour de l'état perimé des DA.
339 */
340 public function testMaintenanceDossierAutorisation() {
341
342 // Lien à envoyer
343 $url = $this->base_url.'services/rest_entry.php/maintenance';
344 // Mode de la requête
345 $request = 'POST';
346 // Données à envoyer
347 $postfields = array(
348 'module' => 'update_dossier_autorisation',
349 );
350
351 // Initialisation cURL
352 $message = $this->init_cURL($url, $request, $postfields);
353
354 // On vérifie le retour de la session cURL
355 $this->assertEquals($message, "1 dossier(s) d'autorisation(s) mis à jour.");
356
357 //Deuxième jet pour autre message
358
359 // Initialisation cURL
360 $message = $this->init_cURL($url, $request, $postfields);
361
362 // On vérifie le retour de la session cURL
363 $this->assertEquals($message, 'Aucune mise à jour');
364 }
365
366 /**
367 * XXX Le message retourné par le synchronisation peut être différent si le
368 * test n'est pas lancé dans le testsuite.
369 */
370 public function testMaintenanceSynchronisationContrainte() {
371
372 // Lien à envoyer
373 $url = $this->base_url.'services/rest_entry.php/maintenance';
374 // Mode de la requête
375 $request = 'POST';
376 // Données à envoyer
377 $postfields = array(
378 'module' => 'contrainte',
379 );
380
381 // Initialisation cURL
382 $message = $this->init_cURL($url, $request, $postfields);
383
384 // On vérifie le retour de la session cURL
385 $this->assertContains("2 contrainte(s) ajoutée(s).", $message);
386 $this->assertContains("Aucune contraintes à modifier.", $message);
387 $this->assertContains("4 contrainte(s) archivée(s).", $message);
388 }
389
390 /**
391 * Test le retour d'avis d'une consultation sans fichier de consultation
392 */
393 public function testConsultationSansFichier() {
394
395 // Lien à envoyer
396 $url = $this->base_url.'services/rest_entry.php/consultations/3';
397 // Mode de la requête
398 $request = 'PUT';
399 // Données à envoyer
400 $postfields = array(
401 'date_retour' => '15/01/2013',
402 'avis' => 'Favorable',
403 );
404
405 // Initialisation cURL
406 $message = $this->init_cURL($url, $request, $postfields);
407
408 // On vérifie le retour de la session cURL
409 $this->assertEquals($message, 'L\'avis de la consultation 3 a été pris en compte');
410
411 //Deuxième jet pour autre message
412
413 // Initialisation cURL
414 $message = $this->init_cURL($url, $request, $postfields);
415
416 // On vérifie le retour de la session cURL
417 $this->assertEquals($message, 'Un retour d\'avis a déjà été rendu pour la consultation \'3\'.');
418 }
419
420 /**
421 * Test le retour d'avis d'une consultation avec fichier de consultation
422 */
423 public function testConsultationAvecFichier() {
424
425 // Lien à envoyer
426 $url = $this->base_url.'services/rest_entry.php/consultations/4';
427 // Mode de la requête
428 $request = 'PUT';
429 // Données à envoyer
430 $postfields = array(
431 'date_retour' => '15/03/2013',
432 'avis' => 'Favorable',
433 'fichier_base64' => 'JVBERi0xLjQKJcOkw7zDtsOfCjIgM',
434 'nom_fichier' => 'plop.pdf',
435 );
436
437 // Initialisation cURL
438 $message = $this->init_cURL($url, $request, $postfields);
439
440 // On vérifie le retour de la session cURL
441 $this->assertEquals($message, 'L\'avis de la consultation 4 a été pris en compte');
442
443 //Deuxième jet pour autre message
444
445 // Initialisation cURL
446 $message = $this->init_cURL($url, $request, $postfields);
447
448 // On vérifie le retour de la session cURL
449 $this->assertEquals($message, 'Un retour d\'avis a déjà été rendu pour la consultation \'4\'.');
450 }
451
452 /**
453 * Test le retour de message
454 */
455 public function testMessage() {
456
457 // Lien à envoyer
458 $url = $this->base_url.'services/rest_entry.php/messages';
459 // Mode de la requête
460 $request = 'POST';
461 // Données à envoyer
462 $postfields = array(
463 'type' => 'Mise à jour de complétude ERP ACC',
464 'date' => '16/06/2014 14:12',
465 'emetteur' => 'John Doe',
466 'dossier_instruction' => 'PC0130551200001P0',
467 'contenu' => array(
468 'Complétude ERP ACC' => 'non',
469 'Motivation Complétude ERP ACC' => 'Lorem ipsum dolor sit amet...'),
470 );
471
472 // Initialisation cURL
473 $message = $this->init_cURL($url, $request, $postfields);
474
475 // On vérifie le retour de la session cURL
476 $this->assertEquals($message, 'Insertion du message \'Mise à jour de complétude ERP ACC\' OK.');
477
478 // On change les postfields
479 $postfields = array(
480 'type' => 'Mise à jour de complétude ERP SECU',
481 'date' => '16/06/2014 14:12',
482 'emetteur' => 'John Doe',
483 'dossier_instruction' => 'PC0130551200001P0',
484 'contenu' => array(
485 'Complétude ERP SECU' => 'oui',
486 'Motivation Complétude ERP SECU' => 'Lorem ipsum dolor sit amet...'),
487 );
488
489 // Initialisation cURL
490 $message = $this->init_cURL($url, $request, $postfields);
491
492 // On vérifie le retour de la session cURL
493 $this->assertEquals($message, 'Insertion du message \'Mise à jour de complétude ERP SECU\' OK.');
494
495 // On change les postfields
496 $postfields = array(
497 'type' => 'Mise à jour de qualification',
498 'date' => '16/06/2014 14:12',
499 'emetteur' => 'John Doe',
500 'dossier_instruction' => 'PC0130551200001P0',
501 'contenu' => array(
502 'Confirmation ERP' => 'oui',
503 'Type de dossier ERP' => 'Lorem ipsum dolor sit amet...',
504 'Catégorie de dossier ERP' => 'Lorem ipsum dolor sit amet...'),
505 );
506
507 // Initialisation cURL
508 $message = $this->init_cURL($url, $request, $postfields);
509
510 // On vérifie le retour de la session cURL
511 $this->assertEquals($message, 'Insertion du message \'Mise à jour de qualification\' OK.');
512
513 // On change les postfields
514 $postfields = array(
515 'type' => 'Dossier à enjeux ERP',
516 'date' => '16/06/2014 14:12',
517 'emetteur' => 'John Doe',
518 'dossier_instruction' => 'PC0130551200001P0',
519 'contenu' => array(
520 'Dossier à enjeux ERP' => 'oui',),
521 );
522
523 // Initialisation cURL
524 $message = $this->init_cURL($url, $request, $postfields);
525
526 // On vérifie le retour de la session cURL
527 $this->assertEquals($message, 'Insertion du message \'Dossier à enjeux ERP\' OK.');
528
529 }
530
531 /**
532 * Test la mise à jour de dossier d'autorisation
533 */
534 public function testDossierAutorisationMAJERP() {
535
536 // Lien à envoyer
537 $url = $this->base_url.'services/rest_entry.php/dossier_autorisations/PC0130551200001';
538 // Mode de la requête
539 $request = 'PUT';
540 // Données à envoyer
541 $postfields = array(
542 'numero_erp' => '12345',
543 );
544
545 // Initialisation cURL
546 $message = $this->init_cURL($url, $request, $postfields);
547
548 // On vérifie le retour de la session cURL
549 $this->assertEquals($message, 'Numero ERP du batiment etait assigne au dossier d\'autorisation PC0130551200001');
550 }
551
552 /**
553 * Test l'ERP ouvert
554 */
555 public function testDossierAutorisationERPOuvert() {
556
557 // Lien à envoyer
558 $url = $this->base_url.'services/rest_entry.php/dossier_autorisations/PC0130551200001';
559 // Mode de la requête
560 $request = 'PUT';
561 // Données à envoyer
562 $postfields = array(
563 'erp_ouvert' => 'oui',
564 'date_arrete' => '20/04/2013',
565 );
566
567 // Initialisation cURL
568 $message = $this->init_cURL($url, $request, $postfields);
569
570 // On vérifie le retour de la session cURL
571 $this->assertEquals($message, 'Signature de l\'ouverture ERP au publique etait enregistre pour le dossier d\'autorisation PC0130551200001');
572 }
573
574 /**
575 * Test l'arrêté d'un dossier DAT effectué
576 */
577 public function testDossierAutorisationDATArrete() {
578
579 // Lien à envoyer
580 $url = $this->base_url.'services/rest_entry.php/dossier_autorisations/PC0130551200001';
581 // Mode de la requête
582 $request = 'PUT';
583 // Données à envoyer
584 $postfields = array(
585 'arrete_effectue' => 'oui',
586 'date_arrete' => '04/06/2014',
587 );
588
589 // Initialisation cURL
590 $message = $this->init_cURL($url, $request, $postfields);
591
592 /// On vérifie le retour de la session cURL
593 $this->assertEquals($message, 'Signature de l\'ouverture ERP etait enregistre pour le dossier d\'autorisation PC0130551200001');
594 }
595
596 /**
597 * Test la méthode GET sur un dossier d'autorisation
598 */
599 public function testDossierAutorisationGET() {
600
601 // Lien à envoyer
602 $url = $this->base_url.'services/rest_entry.php/dossier_autorisations/PC0130551200001';
603 // Mode de la requête
604 $request = 'GET';
605 // Données à envoyer
606 $postfields = '';
607
608 // Initialisation cURL
609 $message = $this->init_cURL($url, $request, $postfields);
610
611 // On vérifie le retour de la session cURL
612 $this->assertEquals($message, '"dossier_autorisation": "PC0130551200001", "dossier_autorisation_type_detaille": "1", "exercice": "", "insee": "01234", "terrain_references_cadastrales": "", "terrain_adresse_voie_numero": "", "terrain_adresse_voie": "", "terrain_adresse_lieu_dit": "", "terrain_adresse_localite": "", "terrain_adresse_code_postal": "", "terrain_adresse_bp": "", "terrain_adresse_cedex": "", "terrain_superficie": "", "arrondissement": "", "depot_initial": "", "erp_numero_batiment": "12345", "erp_ouvert": "f", "erp_date_ouverture": "2013-04-20", "erp_arrete_decision": "f", "erp_date_arrete_decision": "2014-06-04", "numero_version": "0", "etat_dossier_autorisation": "1", "date_depot": "", "date_decision": "", "date_validite": "", "date_chantier": "", "date_achevement": "", "avis_decision": "", "etat_dernier_dossier_instruction_accepte": "", "dossier_autorisation_libelle": "PC 013055 12 00001"');
613 }
614
615 /*
616 * Test de la complétude et la clôture d'un dossier d'instruction
617 * ERP -> ADS
618 */
619 public function testDossierInstructionPut(){
620
621 //{{{On essaye de mettre à jour un dossier qui n'existe pas
622 // Initialisation de la classe d'envoi de requête REST
623 $messageSenderRest = new MessageSenderRest($this->base_url.
624 "services/rest_entry.php/dossier_instructions/LOREM");
625 // Formatage des données à envoyer
626 $data = array(
627 "message" => "complet",
628 "date" => date("d/m/Y")
629 );
630
631 // Envoi de la requête
632 $messageSenderRest->execute("PUT", "application/json", json_encode($data));
633
634 // Vérification de la réponse
635 $this->assertEquals($messageSenderRest->getResponse(),
636 _("Ce dossier n'existe pas"));
637 //}}}
638
639 //{{{On essaye de mettre à jour un dossier qui existe mais n'est pas un AT
640 // Initialisation de la classe d'envoi de requête REST
641 $messageSenderRest = new MessageSenderRest($this->base_url.
642 "services/rest_entry.php/dossier_instructions/PC0130551200001P0");
643 // Formatage des données à envoyer
644 $data = array(
645 "message" => "complet",
646 "date" => date("d/m/Y")
647 );
648
649 // Envoi de la requête
650 $messageSenderRest->execute("PUT", "application/json", json_encode($data));
651
652 // Vérification de la réponse
653 $this->assertEquals($messageSenderRest->getResponse(),
654 _("Ce dossier n'est pas un dossier de type AT"));
655 //}}}
656
657 //{{{On essaye de mettre à jour un dossier AT en cours d'instruction
658 // Initialisation de la classe d'envoi de requête REST
659 $messageSenderRest = new MessageSenderRest($this->base_url.
660 "services/rest_entry.php/dossier_instructions/AT0130551300001P0");
661 // Formatage des données à envoyer
662 $data = array(
663 "message" => "complet",
664 "date" => date("d/m/Y")
665 );
666
667 // Envoi de la requête
668 $messageSenderRest->execute("PUT", "application/json", json_encode($data));
669
670 // Vérification de la réponse
671 $this->assertEquals($messageSenderRest->getResponse(),
672 _("Mise a jour des donnees realisees avec succes"));
673 //}}}
674
675 //{{{On essaye de mettre à jour un dossier sans message
676 // Initialisation de la classe d'envoi de requête REST
677 $messageSenderRest = new MessageSenderRest($this->base_url.
678 "services/rest_entry.php/dossier_instructions/AT0130551300001P0");
679 // Formatage des données à envoyer
680 $data = array(
681 "message" => "",
682 "date" => date("d/m/Y")
683 );
684
685 // Envoi de la requête
686 $messageSenderRest->execute("PUT", "application/json", json_encode($data));
687
688 // Vérification de la réponse
689 $this->assertEquals($messageSenderRest->getResponse(),
690 _("Aucun message fourni"));
691 //}}}
692
693 //{{{On essaye de mettre à jour un dossier avec un message qui existe pas
694 // Initialisation de la classe d'envoi de requête REST
695 $messageSenderRest = new MessageSenderRest($this->base_url.
696 "services/rest_entry.php/dossier_instructions/AT0130551300001P0");
697 // Formatage des données à envoyer
698 $data = array(
699 "message" => "test",
700 "date" => date("d/m/Y")
701 );
702
703 // Envoi de la requête
704 $messageSenderRest->execute("PUT", "application/json", json_encode($data));
705
706 // Vérification de la réponse
707 $this->assertEquals($messageSenderRest->getResponse(),
708 _("Message fourni incorrect"));
709 //}}}
710
711 //{{{On essaye de mettre à jour un dossier sans date
712 // Initialisation de la classe d'envoi de requête REST
713 $messageSenderRest = new MessageSenderRest($this->base_url.
714 "services/rest_entry.php/dossier_instructions/AT0130551300001P0");
715 // Formatage des données à envoyer
716 $data = array(
717 "message" => "complet",
718 "date" => null
719 );
720
721 // Envoi de la requête
722 $messageSenderRest->execute("PUT", "application/json", json_encode($data));
723
724 // Vérification de la réponse
725 $this->assertEquals($messageSenderRest->getResponse(),
726 _("Aucune date fournie"));
727 //}}}
728
729 //{{{On essaye de mettre à jour un dossier avec une date mal formatée
730 // Initialisation de la classe d'envoi de requête REST
731 $messageSenderRest = new MessageSenderRest($this->base_url.
732 "services/rest_entry.php/dossier_instructions/AT0130551300001P0");
733 // Formatage des données à envoyer
734 $data = array(
735 "message" => "complet",
736 "date" => date("m/Y")
737 );
738
739 // Envoi de la requête
740 $messageSenderRest->execute("PUT", "application/json", json_encode($data));
741
742 // Vérification de la réponse
743 $this->assertEquals($messageSenderRest->getResponse(),
744 _("Date fournie au mauvais format"));
745 //}}}
746
747 //{{{On ne fourni pas de numéro de dossier d'instruction
748 // Initialisation de la classe d'envoi de requête REST
749 $messageSenderRest = new MessageSenderRest($this->base_url.
750 "services/rest_entry.php/dossier_instructions/");
751
752 // Envoi de la requête
753 $messageSenderRest->execute("PUT", "application/json", json_encode($data));
754
755 // Vérification de la réponse
756 $this->assertEquals($messageSenderRest->getResponse(),
757 _("Aucun identifiant fourni pour la ressource"));
758 //}}}
759
760 //{{{On essaye de mettre à jour un dossier AT déjà clos
761 // Initialisation de la classe d'envoi de requête REST
762 $messageSenderRest = new MessageSenderRest($this->base_url.
763 "services/rest_entry.php/dossier_instructions/AT0130551300001P0");
764 // Formatage des données à envoyer
765 $data = array(
766 "message" => "clos",
767 "date" => date("d/m/Y")
768 );
769
770 // Envoi de la requête pour clôturé le dossier
771 $messageSenderRest->execute("PUT", "application/json", json_encode($data));
772 // Vérification de la réponse
773 $this->assertEquals($messageSenderRest->getResponse(),
774 _("Mise a jour des donnees realisees avec succes"));
775
776 // Envoi de la requête pour tester que l'on ne peut pas clôturer une
777 //seconde fois un dossier d'instruction
778 $messageSenderRest->execute("PUT", "application/json", json_encode($data));
779 // Vérification de la réponse
780 $this->assertEquals($messageSenderRest->getResponse(),
781 _("Ce dossier est deja clos"));
782 //}}}
783 }
784 }
785
786 ?>

Properties

Name Value
svn:executable *
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26