1 |
softime |
2086 |
<?php |
2 |
|
|
/** |
3 |
|
|
* |
4 |
|
|
*/ |
5 |
|
|
|
6 |
|
|
// |
7 |
|
|
require_once "base.php"; |
8 |
|
|
|
9 |
|
|
class General extends Base2TestCase { |
10 |
|
|
|
11 |
|
|
/** |
12 |
|
|
* Ce test permet de vérifier qu'aucune requête mémorisée reqmo du menu |
13 |
|
|
* "Export" -> "Requêtes mémorisées" ne produit d'erreur de base de données. |
14 |
|
|
*/ |
15 |
|
|
public function test_92_verifier_tous_les_exports_reqmo_inc() { |
16 |
|
|
// On récupère la liste des objets à traiter |
17 |
|
|
$reqmos = $this->get_list_of_files_in_sql_pgsql("reqmo"); |
18 |
|
|
// On se connecte en tant que "admin" |
19 |
|
|
$this->login("admin", "admin"); |
20 |
|
|
|
21 |
|
|
// On clique sur la rubrique Export du menu |
22 |
|
|
//$this->byCssSelector("#menu li.rubrik a.edition-20")->click(); |
23 |
|
|
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
24 |
|
|
//$this->verifynoerrors(); |
25 |
|
|
// On clique sur l'élément Requêtes mémorisées dans le menu |
26 |
|
|
//$this->byCssSelector("#menu li.elem a.reqmo-16")->click(); |
27 |
|
|
|
28 |
|
|
// On ouvre les reqmo par le lien car le menu n'est pas affiché |
29 |
|
|
$this->url("openads/scr/reqmo.php"); |
30 |
|
|
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
31 |
|
|
$this->verifynoerrors(); |
32 |
|
|
// On boucle sur les requêtes mémorisées disponibles ( *.reqmo.inc.php ) |
33 |
|
|
foreach ($reqmos as $reqmo) { |
34 |
|
|
// On clique sur le lien qui correspond à la requête mémorisée |
35 |
|
|
$this->byCssSelector("#reqmo a.reqmo-16[href=\"../scr/requeteur.php?obj=".$reqmo["file"]."\"]")->click(); |
36 |
|
|
// On vérifie qu'il n'y ait pas d'erreur |
37 |
|
|
$this->verifynoerrors(); |
38 |
|
|
// On valide le formulaire |
39 |
|
|
$this->byName("valid.reqmo")->click(); |
40 |
|
|
// On vérifie qu'il n'y ait pas d'erreur |
41 |
|
|
$this->verifynoerrors(); |
42 |
|
|
// On clique sur le bouton retour |
43 |
|
|
$this->byCssSelector("a.retour")->click(); |
44 |
|
|
// On clique sur le bouton retour |
45 |
|
|
$this->byCssSelector("a.retour")->click(); |
46 |
|
|
} |
47 |
|
|
// On se déconnecte |
48 |
|
|
$this->logout(); |
49 |
|
|
} |
50 |
|
|
|
51 |
|
|
// {{{ Fonctions utilitaires pour le fonctionnement des tests |
52 |
|
|
|
53 |
|
|
/** |
54 |
|
|
* Cette méthode permet de récupérer un tableau contentant la liste des |
55 |
|
|
* fichiers présents dans le dossier sql/pgsql. En fonction du paramètre |
56 |
|
|
* passé la liste concerne les fichiers *.pdf.inc.php soit les fichiers |
57 |
|
|
* *.reqmo.inc.php. |
58 |
|
|
*/ |
59 |
|
|
private function get_list_of_files_in_sql_pgsql($type = NULL) { |
60 |
|
|
// |
61 |
|
|
if (is_null($type) || !in_array($type, array("pdf", "reqmo",))) { |
62 |
|
|
// |
63 |
|
|
return array(); |
64 |
|
|
} |
65 |
|
|
// |
66 |
|
|
$dir = getcwd(); |
67 |
|
|
$dir = substr($dir, 0, strlen($dir) - 6)."/sql/pgsql/"; |
68 |
|
|
$dossier = opendir($dir); |
69 |
|
|
$tab = array(); |
70 |
|
|
while ($entree = readdir($dossier)) { |
71 |
|
|
if (strstr($entree, $type)) { |
72 |
|
|
// Si l'extention du fichier $entree est .inc.php |
73 |
|
|
if (strpos($entree, ".inc.php")) { |
74 |
|
|
$filext = strlen(".".$type.".inc.php"); |
75 |
|
|
} else { |
76 |
|
|
// Sinon on considere qu'elle est -> .inc (compatibilite) |
77 |
|
|
$filext = strlen(".".$type.".inc"); |
78 |
|
|
} |
79 |
|
|
// |
80 |
|
|
array_push($tab, array('file' => substr($entree, 0, strlen($entree) - $filext))); |
81 |
|
|
} |
82 |
|
|
} |
83 |
|
|
closedir($dossier); |
84 |
|
|
asort($tab); |
85 |
|
|
// |
86 |
|
|
return $tab; |
87 |
|
|
} |
88 |
|
|
|
89 |
|
|
// }}} |
90 |
|
|
} |
91 |
|
|
?> |