1 # -*- coding: utf-8 -*-
3 from django
.core
.urlresolvers
import reverse
4 from project
.recrutement
.test
.common
import RecrutementTest
6 class OffreEmploiAddTest(RecrutementTest
):
8 Test l'ajout d'une offre d'emploi
10 url
= reverse('admin:emploi_offreemploi_add')
12 def test_anonyme(self
):
14 Un anonyme ne peut pas ajouter une offre d'emploi
17 self
._test_acces_ko(self
.url
)
19 def test_correspondant_rh(self
):
21 Un correspondant RH ne peut pas ajouter une offre d'emploi
23 self
._test_correspondant_rh()
24 self
._test_acces_ko(self
.url
)
26 def test_administrateur_regional(self
):
28 Un administrateur peut ajouter une offre d'emploi
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 une offre d'emploi
37 self
._test_directeur_bureau()
38 self
._test_acces_ok(self
.url
)
42 Un DRH peut ajouter une offre d'emploi
45 self
._test_acces_ok(self
.url
)
49 Un DRH (2ieme niveau) peut ajouter une offre d'emploi
52 self
._test_acces_ok(self
.url
)
54 def _test_grp_accior(self
):
56 Un membre de l'ACCIOR ne peut ajouter une offre d'emploi
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 ajouter une offre d'emploi
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 peut ajouter une offre d'emploi
72 self
._test_grp_haute_direction()
73 self
._test_acces_ok(self
.url
)
75 def _test_grp_service_utilisateurs(self
):
77 Un membre du groupe service utilisateur ne peut ajouter une offre d'emploi
79 self
._test_grp_service_utilisateurs()
80 self
._test_acces_ko(self
.url
)
83 class OffreEmploiDeleteTest(RecrutementTest
):
85 Test la suppression d'une offre d'emploi
89 super(OffreEmploiDeleteTest
, self
).setUp()
90 self
.url
= reverse('admin:emploi_offreemploi_delete',
91 args
=[self
.offre_cnf_ngaoundere
.id])
93 def test_anonyme(self
):
95 Un anonyme ne peut pas supprimer une offre d'emploi
98 self
._test_acces_ko(self
.url
)
100 def test_correspondant_rh(self
):
102 Un correspondant RH ne peut pas supprimer une offre d'emploi
104 self
._test_correspondant_rh()
105 self
._test_acces_ko(self
.url
)
107 def test_administrateur_regional(self
):
109 Un administrateur peut supprimer une offre d'emploi
111 self
._test_administrateur_regional()
112 self
._test_acces_ok(self
.url
)
113 self
._test_directeur_bureau(email
="2@test.auf")
114 self
._test_acces_ko(self
.url
)
116 def test_directeur_bureau(self
):
118 Un directeur de bureau peut supprimer une offre d'emploi
120 self
._test_directeur_bureau()
121 self
._test_acces_ok(self
.url
)
122 self
._test_directeur_bureau(email
="2@test.auf")
123 self
._test_acces_ko(self
.url
)
127 Un DRH peut supprimer une offre d'emploi
130 self
._test_acces_ok(self
.url
)
134 Un DRH (2ieme niveau) peut supprimer une offre d'emploi
137 self
._test_acces_ok(self
.url
)
139 def _test_grp_accior(self
):
141 Un membre de l'ACCIOR ne peut supprimer une offre d'emploi
143 self
._test_grp_accior()
144 self
._test_acces_ko(self
.url
)
146 def _test_grp_abf(self
):
148 Un membre de l'ABF ne peut supprimer une offre d'emploi
150 self
._test_grp_abf(self
)
151 self
._test_acces_ko(self
.url
)
153 def _test_grp_haute_direction(self
):
155 Un membre de la haute direction peut supprimer une offre d'emploi
157 self
._test_grp_haute_direction()
158 self
._test_acces_ok(self
.url
)
160 def _test_grp_service_utilisateurs(self
):
162 Un membre du groupe service utilisateur ne peut supprimer une offre d'emploi
164 self
._test_grp_service_utilisateurs()
165 self
._test_acces_ko(self
.url
)
168 class OffreEmploiChangeTest(RecrutementTest
):
170 Test la modification d'une offre d'emploi
174 super(OffreEmploiChangeTest
, self
).setUp()
175 self
.url
= reverse('admin:emploi_offreemploi_change',
176 args
=[self
.offre_cnf_ngaoundere
.id])
178 def test_anonyme(self
):
180 Un anonyme ne peut pas modifier une offre d'emploi
183 self
._test_acces_ko(self
.url
)
185 def test_correspondant_rh(self
):
187 Un correspondant RH ne peut pas modifier une offre d'emploi
189 self
._test_correspondant_rh()
190 self
._test_acces_ko(self
.url
)
192 def test_administrateur_regional(self
):
194 Un administrateur peut modifier une offre d'emploi
196 self
._test_administrateur_regional()
197 self
._test_acces_ok(self
.url
)
198 self
._test_administrateur_regional(email
="2@test.auf")
199 self
._test_acces_ko(self
.url
)
201 def test_directeur_bureau(self
):
203 Un directeur de bureau peut modifier une offre d'emploi
205 self
._test_directeur_bureau()
206 self
._test_acces_ok(self
.url
)
207 self
._test_directeur_bureau(email
="2@test.auf")
208 self
._test_acces_ko(self
.url
)
212 Un DRH peut modifier une offre d'emploi
215 self
._test_acces_ok(self
.url
)
219 Un DRH (2ieme niveau) peut modifier une offre d'emploi
222 self
._test_acces_ok(self
.url
)
224 def _test_grp_accior(self
):
226 Un membre de l'ACCIOR ne peut modifier une offre d'emploi
228 self
._test_grp_accior()
229 self
._test_acces_ko(self
.url
)
231 def _test_grp_abf(self
):
233 Un membre de l'ABF ne peut modifier une offre d'emploi
235 self
._test_grp_abf(self
)
236 self
._test_acces_ko(self
.url
)
238 def _test_grp_haute_direction(self
):
240 Un membre de la haute direction peut modifier une offre d'emploi
242 self
._test_grp_haute_direction()
243 self
._test_acces_ok(self
.url
)
245 def _test_grp_service_utilisateurs(self
):
247 Un membre du groupe service utilisateur ne peut modifier une offre d'emploi
249 self
._test_grp_service_utilisateurs()
250 self
._test_acces_ko(self
.url
)
253 class OffreEmploiChangeListTest(RecrutementTest
):
255 Test l'acces à la liste des offres d'emploi
259 super(OffreEmploiChangeListTest
, self
).setUp()
260 self
.url
= reverse('admin:emploi_offreemploi_changelist')
262 def test_anonyme(self
):
264 Un anonyme ne peut pas lister les offres d'emploi
267 self
._test_acces_ko(self
.url
)
269 def test_correspondant_rh(self
):
271 Un correspondant RH ne peut pas lister les offres d'emploi
273 self
._test_correspondant_rh()
274 self
._test_acces_ko(self
.url
)
276 def test_administrateur_regional(self
):
278 Un administrateur peut lister les offres d'emploi
280 self
._test_administrateur_regional()
281 self
._test_acces_ok(self
.url
)
282 qs
= self
.client
.get(self
.url
).context
['cl'].query_set
283 self
.assertEqual(len(qs
), 1)
284 self
._test_administrateur_regional(email
="2@test.auf")
285 self
._test_acces_ok(self
.url
)
286 qs
= self
.client
.get(self
.url
).context
['cl'].query_set
287 self
.assertEqual(len(qs
), 0)
289 def test_directeur_bureau(self
):
291 Un directeur de bureau peut lister les offres d'emploi
293 self
._test_directeur_bureau()
294 self
._test_acces_ok(self
.url
)
295 qs
= self
.client
.get(self
.url
).context
['cl'].query_set
296 self
.assertEqual(len(qs
), 1)
297 self
._test_directeur_bureau(email
="2@test.auf")
298 self
._test_acces_ok(self
.url
)
299 qs
= self
.client
.get(self
.url
).context
['cl'].query_set
300 self
.assertEqual(len(qs
), 0)
304 Un DRH peut lister les offres d'emploi
307 self
._test_acces_ok(self
.url
)
311 Un DRH (2ieme niveau) peut lister les offres d'emploi
314 self
._test_acces_ok(self
.url
)
316 def _test_grp_accior(self
):
318 Un membre de l'ACCIOR ne peut lister les offres d'emploi
320 self
._test_grp_accior()
321 self
._test_acces_ko(self
.url
)
323 def _test_grp_abf(self
):
325 Un membre de l'ABF ne peut lister les offres d'emploi
327 self
._test_grp_abf(self
)
328 self
._test_acces_ko(self
.url
)
330 def _test_grp_haute_direction(self
):
332 Un membre de la haute direction peut lister les offres d'emploi
334 self
._test_grp_haute_direction()
335 self
._test_acces_ok(self
.url
)
337 def _test_grp_service_utilisateurs(self
):
339 Un membre du groupe service utilisateur ne peut lister les offres d'emploi
341 self
._test_grp_service_utilisateurs()
342 self
._test_acces_ko(self
.url
)