Fixed failing tests

This commit is contained in:
Viswamedha Nalabotu 2026-03-11 15:03:32 +00:00
parent cb0aa071b3
commit 6d85fd4341
2 changed files with 43 additions and 6 deletions

View file

@ -597,23 +597,38 @@ class OnboardingApiTests(TestCase):
self.assertEqual(response.status_code, HTTP_400_BAD_REQUEST)
self.assertIn('structure', response.data)
def test_onboarding_flow_destroy_removes_sessions_for_role(self):
def test_onboarding_flow_destroy_removes_sessions_for_flow(self):
self.client.force_authenticate(self.manager)
flow_to_delete = OnboardingFlow.objects.create(
title='Delete Me and Sessions',
role=self.role,
structure=[],
)
session = OnboardingSession.objects.create(
session_for_deleted_flow = OnboardingSession.objects.create(
user=self.member,
role=self.role,
flow=flow_to_delete,
state={'flow_uuid': str(flow_to_delete.uuid)},
active_configs={},
)
untouched_flow = OnboardingFlow.objects.create(
title='Keep Me and Sessions',
role=self.role,
structure=[],
)
session_for_other_flow = OnboardingSession.objects.create(
user=self.member,
role=self.role,
flow=untouched_flow,
state={'flow_uuid': str(untouched_flow.uuid)},
active_configs={},
)
response = self.client.delete(f'/api/onboarding-flow/{flow_to_delete.uuid}/')
self.assertEqual(response.status_code, HTTP_204_NO_CONTENT)
self.assertFalse(OnboardingSession.objects.filter(uuid=session.uuid).exists())
self.assertFalse(OnboardingSession.objects.filter(uuid=session_for_deleted_flow.uuid).exists())
self.assertTrue(OnboardingSession.objects.filter(uuid=session_for_other_flow.uuid).exists())
def test_onboarding_flow_start_session_updates_flow_uuid_on_existing_session(self):
self.role.members.add(self.member)

View file

@ -83,6 +83,28 @@ class OnboardingConsumerConfigSelectionTests(TestCase):
fallback = self.consumer._build_fallback_quiz_fields(['Topic A', 'Topic B'])
self.assertEqual(len(fallback), 8)
self.assertTrue(all(item.get('field_type') == 'select' for item in fallback))
self.assertTrue(all(len(item.get('options', [])) >= 4 for item in fallback))
self.assertTrue(all(item.get('validation', {}).get('correct_option') in item.get('options', []) for item in fallback))
select_items = [item for item in fallback if item.get('field_type') == 'select']
short_answer_items = [
item
for item in fallback
if item.get('field_type') in ('text', 'textarea')
]
self.assertGreaterEqual(len(select_items), 2)
self.assertGreaterEqual(len(short_answer_items), 2)
self.assertTrue(all(len(item.get('options', [])) >= 4 for item in select_items))
self.assertTrue(
all(
item.get('validation', {}).get('correct_option') in item.get('options', [])
for item in select_items
)
)
self.assertTrue(
all(
isinstance(item.get('validation', {}).get('accepted_answers', []), list)
and len(item.get('validation', {}).get('accepted_answers', [])) > 0
for item in short_answer_items
)
)