1 # -*- coding: utf-8 -*-
3 from django
.core
.urlresolvers
import reverse
4 from project
.rh
.test
.common
import RhTest
6 class EmployeAddTest(RhTest
):
8 Test l'ajout d'un employé
10 url
= reverse('admin:rh_employe_add')
12 def test_anonyme(self
):
14 Un anonyme ne peut pas créer d'employé
17 self
._test_acces_ko(self
.url
)
19 def test_correspondant_rh(self
):
21 Un correspodant RH peut ajouter un employé
23 self
._test_correspondant_rh()
24 self
._test_acces_ok(self
.url
)
26 def test_administrateur_regional(self
):
28 Un administrateur peut ajouter un employé
30 self
._test_administrateur_regional()
31 self
._test_acces_ok(self
.url
)
33 def test_directeur_bureau(self
):
35 Un directeur de bureau peut ajouter un employé
37 self
._test_directeur_bureau()
38 self
._test_acces_ok(self
.url
)
42 Un DRH peut ajouter un employé
45 self
._test_acces_ok(self
.url
)
49 Un DRH (2ieme niveau) peut ajouter un employé
52 self
._test_acces_ok(self
.url
)
54 def _test_grp_accior(self
):
56 Un membre de l'ACCIOR ne peut pas ajouter un employé
58 self
._test_grp_accior()
59 self
._test_acces_ko(self
.url
)
61 def _test_grp_abf(self
):
63 Un membre de l'ABF ne peut pas ajouter un employé
65 self
._test_grp_abf(self
)
66 self
._test_acces_ko(self
.url
)
68 def _test_grp_haute_direction(self
):
70 Un membre de la haute direction ne peut pas ajouter un employé
72 self
._test_grp_haute_direction()
73 self
._test_acces_ko(self
.url
)
75 def _test_grp_service_utilisateurs(self
):
77 Un membre du groupe service utilisateur ne peut pas ajouter un employé
79 self
._test_grp_service_utilisateurs()
80 self
._test_acces_ko(self
.url
)
83 class EmployeDeleteTest(RhTest
):
85 Test la suppression d'un employé
89 super(EmployeDeleteTest
, self
).setUp()
90 self
.url
= reverse('admin:rh_employe_delete',
91 args
=[self
.employe_cnf_ngaoundere
.id])
93 def test_anonyme(self
):
95 Un anonyme ne peut pas supprimer un employé
98 self
._test_acces_ko(self
.url
)
100 def test_correspondant_rh(self
):
102 Un correspodant RH ne peut pas supprimer un employé
104 self
._test_correspondant_rh()
105 self
._test_acces_ko(self
.url
)
107 def test_administrateur_regional(self
):
109 Un administrateur ne peut pas supprimer un employé
111 self
._test_administrateur_regional()
112 self
._test_acces_ko(self
.url
)
114 def test_directeur_bureau(self
):
116 Un directeur de bureau ne peut pas supprimer un employé
118 self
._test_directeur_bureau()
119 self
._test_acces_ko(self
.url
)
123 Un DRH peut supprimer un employé
126 self
._test_acces_ok(self
.url
)
130 Un DRH (2ieme niveau) peut supprimer un employé
133 self
._test_acces_ok(self
.url
)
135 def _test_grp_accior(self
):
137 Un membre de l'ACCIOR ne peut pas supprimer un employé
139 self
._test_grp_accior()
140 self
._test_acces_ko(self
.url
)
142 def _test_grp_abf(self
):
144 Un membre de l'ABF ne peut pas supprimer un employé
146 self
._test_grp_abf(self
)
147 self
._test_acces_ko(self
.url
)
149 def _test_grp_haute_direction(self
):
151 Un membre de la haute direction ne peut pas supprimer un employé
153 self
._test_grp_haute_direction()
154 self
._test_acces_ko(self
.url
)
156 def _test_grp_service_utilisateurs(self
):
158 Un membre du groupe service utilisateur ne peut pas supprimer un employé
160 self
._test_grp_service_utilisateurs()
161 self
._test_acces_ko(self
.url
)
164 class EmployeListTest(RhTest
):
166 Test la suppression d'un employé
170 super(EmployeListTest
, self
).setUp()
171 self
.url
= reverse('admin:rh_employe_changelist')
173 def test_anonyme(self
):
175 Un anonyme ne peut pas voir les employés
178 self
._test_acces_ko(self
.url
)
180 def test_correspondant_rh(self
):
182 Un correspodant RH peut voir les employés
184 self
._test_correspondant_rh()
185 self
._test_acces_ok(self
.url
)
186 qs
= self
.client
.get(self
.url
).context
['cl'].query_set
187 self
.assertEqual(len(qs
), 2)
189 def test_administrateur_regional(self
):
191 Un administrateur peut voir les employés de sa région
193 self
._test_administrateur_regional()
194 self
._test_acces_ok(self
.url
)
195 qs
= self
.client
.get(self
.url
).context
['cl'].query_set
196 self
.assertEqual(len(qs
), 2)
198 def test_directeur_bureau(self
):
200 Un directeur de bureau peut voir les employés de sa région
202 self
._test_directeur_bureau()
203 self
._test_acces_ok(self
.url
)
204 qs
= self
.client
.get(self
.url
).context
['cl'].query_set
205 self
.assertEqual(len(qs
), 2)
209 Un DRH peut voir tous les employés
212 self
._test_acces_ok(self
.url
)
213 qs
= self
.client
.get(self
.url
).context
['cl'].query_set
214 self
.assertEqual(len(qs
), 4)
218 Un DRH (2ieme niveau) peut voir tous les employés
221 self
._test_acces_ok(self
.url
)
223 def _test_grp_accior(self
):
225 Un membre de l'ACCIOR ne peut pas voir les employés
227 self
._test_grp_accior()
228 self
._test_acces_ko(self
.url
)
230 def _test_grp_abf(self
):
232 Un membre de l'ABF ne peut pas voir les employés
234 self
._test_grp_abf(self
)
235 self
._test_acces_ko(self
.url
)
237 def _test_grp_haute_direction(self
):
239 Un membre de la haute direction ne peut pas voir les employés
241 self
._test_grp_haute_direction()
242 self
._test_acces_ko(self
.url
)
244 def _test_grp_service_utilisateurs(self
):
246 Un membre du groupe service utilisateur voir les employés
248 self
._test_grp_service_utilisateurs()
249 self
._test_acces_ko(self
.url
)