diff --git a/smash/web/tests/models/test_worker.py b/smash/web/tests/models/test_worker.py index 1b479467a673a15eb108e2ba61aaf519fde703f2..338ef668e0ca0b9befe465f28e17884ba7613f98 100644 --- a/smash/web/tests/models/test_worker.py +++ b/smash/web/tests/models/test_worker.py @@ -91,3 +91,29 @@ class WorkerModelTests(TestCase): worker.roles.update(role="unk") with self.assertRaises(Exception): worker_type_by_worker(worker) + + #worker role tests + + def test_worker_role_by_worker_without_role(self): + self.assertEqual(WORKER_STAFF, Worker().role) + + def test_worker_role_by_worker_with_secretary_role(self): + worker = create_worker() + worker.roles.update(role=ROLE_CHOICES_SECRETARY) + self.assertEqual(ROLE_CHOICES_SECRETARY, worker.role) + + def test_worker_role_by_worker_with_health_partner_role(self): + worker = create_worker() + worker.roles.update(role=ROLE_CHOICES_HEALTH_PARTNER) + self.assertEqual(ROLE_CHOICES_HEALTH_PARTNER, worker.role) + + def test_worker_role_by_worker_with_voucher_partner_role(self): + worker = create_worker() + worker.roles.update(role=ROLE_CHOICES_VOUCHER_PARTNER) + self.assertEqual(ROLE_CHOICES_VOUCHER_PARTNER, worker.role) + + def test_worker_role_by_worker_with_invalid_role(self): + worker = create_worker() + worker.roles.update(role="unk") + with self.assertRaises(Exception): + worker.role