1 |
softime |
2347 |
<?php |
2 |
|
|
/** |
3 |
|
|
* Classe de test du menu Administration. |
4 |
|
|
* |
5 |
|
|
* @package openads |
6 |
|
|
* @version SVN : $Id$ |
7 |
|
|
*/ |
8 |
|
|
|
9 |
|
|
// |
10 |
|
|
require_once "base.php"; |
11 |
|
|
|
12 |
|
|
/** |
13 |
|
|
* |
14 |
|
|
*/ |
15 |
|
|
class Administration extends Base2TestCase { |
16 |
|
|
|
17 |
|
|
/** |
18 |
|
|
* Test la synchronisation des utilisateurs avec le ldap |
19 |
|
|
* Les utilisateurs qui devront être ajoutés et mise à jour : |
20 |
|
|
* arnaud.lelache@meyreuil, bob.ho@meyreuil et thierry.benita@meyreuil |
21 |
|
|
* Et les utilisateurs qui devront être supprimés : |
22 |
|
|
* ldap_instructeur et ldap_service |
23 |
|
|
*/ |
24 |
|
|
public function test_01_synchronisation_ldap() { |
25 |
|
|
|
26 |
|
|
// On se connecte à l'application |
27 |
|
|
$this->login("admin", "admin"); |
28 |
|
|
// On clique sur le menu "Administration" |
29 |
|
|
$this->byLinkText("Administration")->click(); |
30 |
|
|
// On clique sur le sous-menu "Annuaire" |
31 |
|
|
$this->byLinkText("Annuaire")->click(); |
32 |
|
|
// On vérifie qu'il y ait 3 utilisateurs à ajouter |
33 |
|
|
$this->assertRegExp("/^[\s\S]*Il y a 3 utilisateur\(s\) présent\(s\) dans l'annuaire et non présent\(s\) dans la base => 3 ajout\(s\)[\s\S]*$/", $this->byId("directory")->text()); |
34 |
|
|
// On vérifie qu'il y ait 2 utilisateurs à supprimer |
35 |
|
|
$this->assertRegExp("/^[\s\S]*Il y a 2 utilisateur\(s\) présent\(s\) dans la base et non présent\(s\) dans l'annuaire => 2 suppression\(s\)[\s\S]*$/", $this->byId("directory")->text()); |
36 |
|
|
// On clique sur "Synchroniser" |
37 |
|
|
$this->byCssSelector("#directory .boutonFormulaire")->click(); |
38 |
|
|
// On vérifie que tout s'est bien passé |
39 |
|
|
$this->assertRegExp("/^[\s\S]*La synchronisation des utilisateurs est terminée.[\s\S]*$/", $this->byCssSelector(".message")->text()); |
40 |
|
|
// On clique sur le sous-menu "Utilisateur" |
41 |
|
|
$this->byLinkText("Utilisateur")->click(); |
42 |
|
|
// On vérifie sur la première page qu'il y a 2 nouveaux utilisateurs |
43 |
|
|
// et que les utilisateurs ldap_instructeur et ldap_service n'y sont plus |
44 |
|
|
$this->assertRegExp("/^[\s\S]*arnaud.lelache@meyreuil[\s\S]*$/", $this->byId("tab-om_utilisateur")->text()); |
45 |
|
|
$this->assertRegExp("/^[\s\S]*bob.ho@meyreuil[\s\S]*$/", $this->byId("tab-om_utilisateur")->text()); |
46 |
|
|
$this->assertNotContains("ldap_instructeur", $this->byId("tab-om_utilisateur")->text()); |
47 |
|
|
$this->assertNotContains("ldap_service", $this->byId("tab-om_utilisateur")->text()); |
48 |
|
|
// On change de page |
49 |
|
|
$this->byCssSelector(".pagination-next")->click(); |
50 |
|
|
// On vérifie sur la deuxième page qu'il y a 1 nouveau utilisateur |
51 |
|
|
// et que les utilisateurs ldap_instructeur et ldap_service n'y sont plus |
52 |
|
|
$this->assertRegExp("/^[\s\S]*thierry.benita@meyreuil[\s\S]*$/", $this->byId("tab-om_utilisateur")->text()); |
53 |
|
|
$this->assertNotContains("ldap_instructeur", $this->byId("tab-om_utilisateur")->text()); |
54 |
|
|
$this->assertNotContains("ldap_service", $this->byId("tab-om_utilisateur")->text()); |
55 |
|
|
// On clique sur le sous-menu "Annuaire" |
56 |
|
|
$this->byLinkText("Annuaire")->click(); |
57 |
|
|
// On vérifie qu'il y ait 3 utilisateurs à mettre à jour |
58 |
|
|
$this->assertRegExp("/^[\s\S]*Il y a 3 utilisateur\(s\) présent\(s\) à la fois dans la base et l'annuaire => 3 mise\(s\) à jour[\s\S]*$/", $this->byId("directory")->text()); |
59 |
|
|
// On clique sur "Synchroniser" |
60 |
|
|
$this->byCssSelector("#directory .boutonFormulaire")->click(); |
61 |
|
|
// On vérifie que tout s'est bien passé |
62 |
|
|
$this->assertRegExp("/^[\s\S]*La synchronisation des utilisateurs est terminée.[\s\S]*$/", $this->byCssSelector(".message")->text()); |
63 |
|
|
// On se déconnecte |
64 |
|
|
$this->logout(); |
65 |
|
|
|
66 |
|
|
} |
67 |
softime |
2445 |
|
68 |
|
|
/** |
69 |
|
|
* Test l'ajout de numéro de versement aux archives par lot grâce à un |
70 |
|
|
* fichier csv, pour les dossiers |
71 |
|
|
*/ |
72 |
|
|
public function test_02_versement_aux_archives() { |
73 |
|
|
|
74 |
|
|
// On se connecte à l'application |
75 |
|
|
$this->login("admin", "admin"); |
76 |
|
|
// On clique sur le menu "Export / Import" |
77 |
|
|
$this->byLinkText("Export / Import")->click(); |
78 |
|
|
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
79 |
|
|
$this->verifyNoErrors(); |
80 |
|
|
// On clique sur le sous-menu "Versement Aux Archives" |
81 |
|
|
$this->byLinkText("Versement Aux Archives")->click(); |
82 |
|
|
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
83 |
|
|
$this->verifyNoErrors(); |
84 |
|
|
// On remplit le champ "insee" |
85 |
|
|
$this->byId("insee")->value("01234"); |
86 |
|
|
// On clic sur le bouton "Importer" |
87 |
|
|
$this->byId("button-versement_archives-importer")->click(); |
88 |
|
|
// On vérifie le message d'erreur |
89 |
|
|
$this->assertContains("Vous n'avez pas séléctionne de fichier à importer.", $this->byCssSelector(".message")->text()); |
90 |
|
|
// On vérifie que le code insee est toujours celui indiqué par |
91 |
|
|
// l'utilisateur |
92 |
|
|
$this->assertContains("01234", $this->byId("insee")->value()); |
93 |
|
|
// On clic sur le bouton pour ajouter un fichier |
94 |
|
|
$this->byCssSelector("span.ui-icon.ui-icon-arrowthickstop-1-s")->click(); |
95 |
|
|
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
96 |
|
|
$this->verifyNoErrors(); |
97 |
|
|
// On sélectionne le fichier csv |
98 |
|
|
$this->byName("userfile[]")->value(dirname(__FILE__)."/binary_files/versement_archives.csv"); |
99 |
|
|
$this->byName("submit")->click(); |
100 |
|
|
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
101 |
|
|
$this->verifyNoErrors(); |
102 |
|
|
// On clic sur le bouton "Importer" |
103 |
|
|
$this->byId("button-versement_archives-importer")->click(); |
104 |
|
|
// On vérifie qu'il n'y a pas d'erreur sur l'élément affiché |
105 |
|
|
$this->verifyNoErrors(); |
106 |
|
|
// On vérifie le message |
107 |
|
|
$this->assertContains("Il y a eu 6 ligne(s) lue(s), 1 ligne(s) acceptée(s), 3 ligne(s) rejetée(s) et 2 ligne(s) ignorée(s)", $this->byCssSelector(".message")->text()); |
108 |
|
|
// On vérifie le CSV à télécharger |
109 |
|
|
$this->assertContains("ligne ignorée : code insee différent de celui indiqué dans le formulaire.", $this->byId("content_versement_archives")->text()); |
110 |
|
|
$this->assertContains("ligne rejetée : dossier inexistant dans l'application.", $this->byId("content_versement_archives")->text()); |
111 |
|
|
$this->assertContains("ligne acceptée : dossier mis à jour.", $this->byId("content_versement_archives")->text()); |
112 |
|
|
$this->assertContains("ligne rejetée : nombre de séparateur incorrect.", $this->byId("content_versement_archives")->text()); |
113 |
|
|
$this->assertContains("ligne rejetée : contenu non conforme.", $this->byId("content_versement_archives")->text()); |
114 |
|
|
// On se déconnecte |
115 |
|
|
$this->logout(); |
116 |
|
|
|
117 |
|
|
} |
118 |
softime |
2347 |
|
119 |
|
|
} |
120 |
|
|
|
121 |
|
|
?> |