fix candidat
[auf_rh_dae.git] / project / recrutement / test / candidat.py
1
2 # -*- coding: utf-8 -*-
3
4 from django.core.urlresolvers import reverse
5 from project.recrutement.test.common import RecrutementTest
6
7 class CandidatAddTest(RecrutementTest):
8 """
9 Test l'ajout d'un candidat
10 """
11 url = reverse('admin:emploi_candidat_add')
12
13 def test_anonyme(self):
14 """
15 Un anonyme ne peut pas ajouter un candidat
16 """
17 self._test_anonyme()
18 self._test_acces_ko(self.url)
19
20 def test_correspondant_rh(self):
21 """
22 Un correspondant RH peut ajouter un candidat
23 """
24 self._test_correspondant_rh()
25 self._test_acces_ok(self.url)
26
27 def test_administrateur_regional(self):
28 """
29 Un administrateur peut ajouter un candidat
30 """
31 self._test_administrateur_regional()
32 self._test_acces_ok(self.url)
33
34 def test_directeur_bureau(self):
35 """
36 Un directeur de bureau peut ajouter un candidat
37 """
38 self._test_directeur_bureau()
39 self._test_acces_ok(self.url)
40
41 def test_drh(self):
42 """
43 Un DRH peut ajouter un candidat
44 """
45 self._test_drh()
46 self._test_acces_ok(self.url)
47
48 def test_drh2(self):
49 """
50 Un DRH (2ieme niveau) peut ajouter un candidat
51 """
52 self._test_drh2()
53 self._test_acces_ok(self.url)
54
55 def _test_grp_accior(self):
56 """
57 Un membre de l'ACCIOR ne peut ajouter un candidat
58 """
59 self._test_grp_accior()
60 self._test_acces_ko(self.url)
61
62 def _test_grp_abf(self):
63 """
64 Un membre de l'ABF ne peut ajouter un candidat
65 """
66 self._test_grp_abf(self)
67 self._test_acces_ko(self.url)
68
69 def _test_grp_haute_direction(self):
70 """
71 Un membre de la haute direction peut ajouter un candidat
72 """
73 self._test_grp_haute_direction()
74 self._test_acces_ok(self.url)
75
76 def _test_grp_service_utilisateurs(self):
77 """
78 Un membre du groupe service utilisateur ne peut ajouter un candidat
79 """
80 self._test_grp_service_utilisateurs()
81 self._test_acces_ko(self.url)
82
83
84 class CandidatDeleteTest(RecrutementTest):
85 """
86 Test la suppression d'un candidat
87 """
88
89 def setUp(self):
90 super(CandidatDeleteTest, self).setUp()
91 self.url = reverse('admin:emploi_candidat_delete',
92 args=[self.candidat_cnf_ngaoundere.id])
93
94 def test_anonyme(self):
95 """
96 Un anonyme ne peut pas supprimer un candidat
97 """
98 self._test_anonyme()
99 self._test_acces_ko(self.url)
100
101 def test_correspondant_rh(self):
102 """
103 Un correspondant RH peut supprimer un candidat
104 """
105 self._test_correspondant_rh()
106 self._test_acces_ok(self.url)
107
108 def test_administrateur_regional(self):
109 """
110 Un administrateur peut supprimer un candidat
111 """
112 self._test_administrateur_regional()
113 self._test_acces_ok(self.url)
114 self._test_directeur_bureau(email="2@test.auf")
115 self._test_acces_ko(self.url)
116
117 def test_directeur_bureau(self):
118 """
119 Un directeur de bureau peut supprimer un candidat
120 """
121 self._test_directeur_bureau()
122 self._test_acces_ok(self.url)
123 self._test_directeur_bureau(email="2@test.auf")
124 self._test_acces_ko(self.url)
125
126 def test_drh(self):
127 """
128 Un DRH peut supprimer un candidat
129 """
130 self._test_drh()
131 self._test_acces_ok(self.url)
132
133 def test_drh2(self):
134 """
135 Un DRH (2ieme niveau) peut supprimer un candidat
136 """
137 self._test_drh2()
138 self._test_acces_ok(self.url)
139
140 def _test_grp_accior(self):
141 """
142 Un membre de l'ACCIOR ne peut supprimer un candidat
143 """
144 self._test_grp_accior()
145 self._test_acces_ko(self.url)
146
147 def _test_grp_abf(self):
148 """
149 Un membre de l'ABF ne peut supprimer un candidat
150 """
151 self._test_grp_abf(self)
152 self._test_acces_ko(self.url)
153
154 def _test_grp_haute_direction(self):
155 """
156 Un membre de la haute direction peut supprimer un candidat
157 """
158 self._test_grp_haute_direction()
159 self._test_acces_ok(self.url)
160
161 def _test_grp_service_utilisateurs(self):
162 """
163 Un membre du groupe service utilisateur ne peut supprimer un candidat
164 """
165 self._test_grp_service_utilisateurs()
166 self._test_acces_ko(self.url)
167
168
169 class CandidatChangeTest(RecrutementTest):
170 """
171 Test la modification d'un candidat
172 """
173
174 def setUp(self):
175 super(CandidatChangeTest, self).setUp()
176 self.url = reverse('admin:emploi_candidat_change',
177 args=[self.candidat_cnf_ngaoundere.id])
178
179 def test_anonyme(self):
180 """
181 Un anonyme ne peut pas modifier un candidat
182 """
183 self._test_anonyme()
184 self._test_acces_ko(self.url)
185
186 def test_correspondant_rh(self):
187 """
188 Un correspondant RH peut modifier un candidat
189 """
190 self._test_correspondant_rh()
191 self._test_acces_ok(self.url)
192
193 def test_administrateur_regional(self):
194 """
195 Un administrateur peut modifier un candidat
196 """
197 self._test_administrateur_regional()
198 self._test_acces_ok(self.url)
199 self._test_administrateur_regional(email="2@test.auf")
200 self._test_acces_ko(self.url)
201
202 def test_directeur_bureau(self):
203 """
204 Un directeur de bureau peut modifier un candidat
205 """
206 self._test_directeur_bureau()
207 self._test_acces_ok(self.url)
208 self._test_directeur_bureau(email="2@test.auf")
209 self._test_acces_ko(self.url)
210
211 def test_drh(self):
212 """
213 Un DRH peut modifier un candidat
214 """
215 self._test_drh()
216 self._test_acces_ok(self.url)
217
218 def test_drh2(self):
219 """
220 Un DRH (2ieme niveau) peut modifier un candidat
221 """
222 self._test_drh2()
223 self._test_acces_ok(self.url)
224
225 def _test_grp_accior(self):
226 """
227 Un membre de l'ACCIOR ne peut modifier un candidat
228 """
229 self._test_grp_accior()
230 self._test_acces_ko(self.url)
231
232 def _test_grp_abf(self):
233 """
234 Un membre de l'ABF ne peut modifier un candidat
235 """
236 self._test_grp_abf(self)
237 self._test_acces_ko(self.url)
238
239 def _test_grp_haute_direction(self):
240 """
241 Un membre de la haute direction peut modifier un candidat
242 """
243 self._test_grp_haute_direction()
244 self._test_acces_ok(self.url)
245
246 def _test_grp_service_utilisateurs(self):
247 """
248 Un membre du groupe service utilisateur ne peut modifier un candidat
249 """
250 self._test_grp_service_utilisateurs()
251 self._test_acces_ko(self.url)
252
253
254 class CandidatChangeListTest(RecrutementTest):
255 """
256 Test l'acces à la liste des candidats
257 """
258
259 def setUp(self):
260 super(CandidatChangeListTest, self).setUp()
261 self.url = reverse('admin:emploi_candidat_changelist')
262
263 def test_anonyme(self):
264 """
265 Un anonyme ne peut pas lister les candidats
266 """
267 self._test_anonyme()
268 self._test_acces_ko(self.url)
269
270 def test_correspondant_rh(self):
271 """
272 Un correspondant RH peut lister les candidats
273 """
274 self._test_correspondant_rh()
275 self._test_acces_ok(self.url)
276
277 def test_administrateur_regional(self):
278 """
279 Un administrateur peut lister les candidats
280 """
281 self._test_administrateur_regional()
282 self._test_acces_ok(self.url)
283 qs = self.client.get(self.url).context['cl'].query_set
284 self.assertEqual(len(qs), 1)
285 self._test_administrateur_regional(email="2@test.auf")
286 self._test_acces_ok(self.url)
287 qs = self.client.get(self.url).context['cl'].query_set
288 self.assertEqual(len(qs), 0)
289
290 def test_directeur_bureau(self):
291 """
292 Un directeur de bureau peut lister les candidats
293 """
294 self._test_directeur_bureau()
295 self._test_acces_ok(self.url)
296 qs = self.client.get(self.url).context['cl'].query_set
297 self.assertEqual(len(qs), 1)
298 self._test_directeur_bureau(email="2@test.auf")
299 self._test_acces_ok(self.url)
300 qs = self.client.get(self.url).context['cl'].query_set
301 self.assertEqual(len(qs), 0)
302
303 def test_drh(self):
304 """
305 Un DRH peut lister les candidats
306 """
307 self._test_drh()
308 self._test_acces_ok(self.url)
309
310 def test_drh2(self):
311 """
312 Un DRH (2ieme niveau) peut lister les candidats
313 """
314 self._test_drh2()
315 self._test_acces_ok(self.url)
316
317 def _test_grp_accior(self):
318 """
319 Un membre de l'ACCIOR ne peut lister les candidats
320 """
321 self._test_grp_accior()
322 self._test_acces_ko(self.url)
323
324 def _test_grp_abf(self):
325 """
326 Un membre de l'ABF ne peut lister les candidats
327 """
328 self._test_grp_abf(self)
329 self._test_acces_ko(self.url)
330
331 def _test_grp_haute_direction(self):
332 """
333 Un membre de la haute direction peut lister les candidats
334 """
335 self._test_grp_haute_direction()
336 self._test_acces_ok(self.url)
337
338 def _test_grp_service_utilisateurs(self):
339 """
340 Un membre du groupe service utilisateur ne peut lister les candidats
341 """
342 self._test_grp_service_utilisateurs()
343 self._test_acces_ko(self.url)