1 |
<?php |
2 |
/** |
3 |
* Fichier contenant la classe test pour le service de consultation |
4 |
* |
5 |
* @package openfoncier |
6 |
* @version SVN : $Id: testServiceConsulte.php 5673 2015-12-21 19:35:24Z nmeucci $ |
7 |
*/ |
8 |
|
9 |
// |
10 |
require_once "base.php"; |
11 |
|
12 |
/** |
13 |
* Classe test du service de consultation |
14 |
*/ |
15 |
class ServiceConsulte extends Base2TestCase { |
16 |
/** |
17 |
* Fonction lancée en debut de chaque test |
18 |
*/ |
19 |
public function setUp() { |
20 |
parent::setUp(); |
21 |
echo ' = '.get_class().'.'.str_replace('test_', '', $this->getName())."\r\n"; |
22 |
} |
23 |
|
24 |
public function onNotSuccessfulTest(Exception $e){ |
25 |
echo 'Line '.$e->getLine().' : '.$e->getMessage()."\r\n"; |
26 |
parent::onNotSuccessfulTest($e); |
27 |
} |
28 |
|
29 |
// le test pour les avis en cours se fait dans testConsultations.php |
30 |
|
31 |
/** |
32 |
* test sur les demandes d'avis passées |
33 |
*/ |
34 |
public function test_01_DemandesAvisPassees() { |
35 |
|
36 |
// Instanciation de la classe utils |
37 |
require_once "../obj/utils.class.php"; |
38 |
@session_start(); |
39 |
$_SESSION['collectivite'] = 1; |
40 |
$_SESSION['login'] = "admin"; |
41 |
$_SERVER['REQUEST_URI'] = ""; |
42 |
$f = new utils("nohtml"); |
43 |
// On se connecte en tant que "consu" |
44 |
// !!! Attention on n'utilise pas la méthode login standard car |
45 |
// l'utilisateur est redirigé automatiquement vers un autre écran |
46 |
// sans voir le message de connexion !!! |
47 |
// On se connecte |
48 |
$this->connect("consu", "consu"); |
49 |
// Allonge le temps d'attente lors de la recherche d'élément |
50 |
$this->timeouts()->implicitWait(10000); |
51 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
52 |
$this->verifynoerrors(); |
53 |
// On temporise pour laisser le temps au javascript de redirection |
54 |
// de faire son travail |
55 |
sleep(1); |
56 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
57 |
$this->verifynoerrors(); |
58 |
// on clique sur le menu |
59 |
$this->byLinkText("Demandes Passées")->click(); |
60 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
61 |
$this->verifynoerrors(); |
62 |
// On stocke la date limite de consultation (M+1) |
63 |
$date_limite = $f->mois_date(date("Y-m-d"), 1, "+"); |
64 |
// On extrait l'année |
65 |
$date_limite = explode('-', $date_limite); |
66 |
$this->byName("recherche")->value("*".$date_limite[0]); |
67 |
$this->byName("classic-search-submit")->submit(); |
68 |
$this->byLinkText("pour conformite")->click(); |
69 |
// on vérifie qu'il n'y ait pas d'erreur |
70 |
$this->verifyNoErrors(); |
71 |
// on vérifie le numéro du dossier |
72 |
$this->assertEquals("AZ 013055 12 00001P0", $this->byId("dossier_libelle")->text()); |
73 |
// on vérifie le nom de la page |
74 |
//html body#jqueryui div#content.ui-widget div#title.ui-state-active h2 |
75 |
$this->assertEquals("Demandes D'avis > Passées", $this->byCssSelector("div#title.ui-state-active h2")->text()); |
76 |
// on clique sur le portlet |
77 |
$this->byId("action-sousform-demande_avis_passee-consulter_pdf")->click();sleep(5); |
78 |
// Liste les fenêtres |
79 |
$windows = $this->windowHandles(); |
80 |
// Change la fenêtre |
81 |
$this->window($windows[1]); |
82 |
// On vérifie qu'il n'y ait pas d'erreur |
83 |
$this->verifynoerrors(); |
84 |
// On vérifie que le text est présent |
85 |
$this->assertRegExp("/^[\s\S]*Avis demandé - pour conformité[\s\S]*$/",$this->source()); |
86 |
$this->assertRegExp("/^[\s\S]*Direction de l'Eau et de l'Assainissement[\s\S]*$/",$this->source()); |
87 |
// On ferme la fenêtre |
88 |
$this->closeWindow(); |
89 |
// On change le focus de la fenêtre |
90 |
$this->window($windows[0]); |
91 |
// On se deconnecte |
92 |
$this->logout(); |
93 |
} |
94 |
|
95 |
/** |
96 |
* test sur l'export csv |
97 |
*/ |
98 |
public function test_02ExportCSV() { |
99 |
|
100 |
// On se connecte en tant que "consu" |
101 |
// !!! Attention on n'utilise pas la méthode login standard car |
102 |
// l'utilisateur est redirigé automatiquement vers un autre écran |
103 |
// sans voir le message de connexion !!! |
104 |
// On se connecte |
105 |
$this->connect("consu", "consu"); |
106 |
// Allonge le temps d'attente lors de la recherche d'élément |
107 |
$this->timeouts()->implicitWait(10000); |
108 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
109 |
$this->verifynoerrors(); |
110 |
// On temporise pour laisser le temps au javascript de redirection |
111 |
// de faire son travail |
112 |
sleep(1); |
113 |
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
114 |
$this->verifynoerrors(); |
115 |
// on clique sur le menu |
116 |
$this->byLinkText("Demandes Passées")->click(); |
117 |
// on vérifie qu'il n'y ait pas d'erreur |
118 |
$this->verifyNoErrors(); |
119 |
// on clique sur le bouton d'export csv |
120 |
$this->byXPath("//div[3]/div[2]/div/div/div/a/span")->click();sleep(2); |
121 |
// on vérifie qu'il n'y ait pas d'erreur |
122 |
$this->verifyNoErrors(); |
123 |
// On se deconnecte |
124 |
$this->logout(); |
125 |
} |
126 |
|
127 |
} |
128 |
?> |