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

Contents of /trunk/tests/testAdministration.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3156 - (show annotations)
Wed Oct 1 09:13:40 2014 UTC (10 years, 4 months ago) by vpihour
File size: 7643 byte(s)
Correction des tests

1 <?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
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 pour ajouter un fichier
87 $this->byCssSelector("span.ui-icon.ui-icon-arrowthickstop-1-s")->click();
88 // On sélectionne un fichier binaire pour tester l'erreur
89 $this->byName("userfile[]")->value(dirname(__FILE__)."/binary_files/lettre_rar16042013124515.pdf");
90 $this->byName("submit")->click();
91 // On vérifié que l'on a une erreur de format
92 $this->assertContains("Le fichier n'est pas conforme à la liste des extension(s) autorisée(s) (.csv). [lettre_rar16042013124515.pdf]", $this->byCssSelector(".message span.text")->text());
93 // On clique sur le bouton fermer
94 $this->byLinkText("Fermer")->click();
95 // On clic sur le bouton "Importer"
96 $this->byId("button-versement_archives-importer")->click();
97 // On vérifie le message d'erreur
98 $this->assertContains("Vous n'avez pas sélectionné de fichier à importer.", $this->byCssSelector(".message")->text());
99 // On vérifie que le code insee est toujours celui indiqué par
100 // l'utilisateur
101 $this->assertEquals("01234", $this->byId("insee")->attribute('value'));
102 // On clic sur le bouton pour ajouter un fichier
103 $this->byCssSelector("span.ui-icon.ui-icon-arrowthickstop-1-s")->click();
104 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
105 $this->verifyNoErrors();
106 // On sélectionne le fichier csv
107 $this->byName("userfile[]")->value(dirname(__FILE__)."/binary_files/versement_archives.csv");
108 $this->byName("submit")->click();sleep(5);
109 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
110 $this->verifyNoErrors();
111 // On clic sur le bouton "Importer"
112 $this->byId("button-versement_archives-importer")->click();sleep(5);
113 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
114 $this->verifyNoErrors();
115 // On vérifie qu'il y a le message de validation d'import du csv
116 $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());
117 // On clique sur le menu "Instruction"
118 $this->byLinkText("Instruction")->click();
119 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
120 $this->verifyNoErrors();
121 // On clique sur le sous-menu "Recherche"
122 $this->byLinkText("Recherche")->click();
123 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
124 $this->verifyNoErrors();
125 // On clique sur le dossier d'instruction ("PC 013055 12 00001P0")
126 $this->byLinkText("PC 013055 12 00001P0")->click();
127 // On vérifie qu'il n'y a pas d'erreur sur l'élément affiché
128 $this->verifyNoErrors();
129 // On vérifie le numéro de versement aux archives
130 $this->assertEquals("1025W 444444", $this->byId("numero_versement_archive")->text());
131 // On se déconnecte
132 $this->logout();
133
134 }
135
136 }
137
138 ?>

Properties

Name Value
svn:Keywords Id
svn:keywords Id

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26