snapshot: preserve role-aware notification preferences and operational alerts

This commit is contained in:
Md Bayazid Bostame
2026-03-27 11:26:57 +01:00
parent fe3a8933fd
commit aa54f41731
25 changed files with 2958 additions and 633 deletions

View File

@@ -3,16 +3,18 @@ from unittest.mock import patch
from django.contrib.auth import get_user_model
from django.test import TestCase
from workflows.branding import get_company_email_domain
from workflows.models import EmployeeProfile, OffboardingRequest
class OffboardingFlowTests(TestCase):
def setUp(self):
self.company_domain = get_company_email_domain()
user_model = get_user_model()
self.user = user_model.objects.create_user(
username='offboard_user',
password='secret123',
email='operator@tub.co',
email=f'operator@{self.company_domain}',
first_name='Nina',
last_name='Admin',
)
@@ -23,7 +25,7 @@ class OffboardingFlowTests(TestCase):
last_name='Beispiel',
department='IT-Service',
job_title='Engineer',
work_email='lara.beispiel@tub.co',
work_email=f'lara.beispiel@{self.company_domain}',
)
def test_offboarding_prefill_from_profile(self):
@@ -32,7 +34,7 @@ class OffboardingFlowTests(TestCase):
self.assertEqual(response.status_code, 200)
self.assertIn('value="Lara Beispiel"', html)
self.assertIn('value="lara.beispiel@tub.co"', html)
self.assertIn(f'value="lara.beispiel@{self.company_domain}"', html)
self.assertIn('value="Engineer"', html)
@patch('workflows.views.process_offboarding_request.delay')
@@ -54,6 +56,6 @@ class OffboardingFlowTests(TestCase):
self.assertEqual(response.status_code, 302)
obj = OffboardingRequest.objects.get(work_email=self.profile.work_email)
self.assertEqual(obj.requested_by_email, 'operator@tub.co')
self.assertEqual(obj.requested_by_email, f'operator@{self.company_domain}')
self.assertEqual(obj.requested_by_name, 'Nina Admin')
mock_delay.assert_called_once_with(obj.id)