feat: update medical training case and auth modules

This commit is contained in:
2026-06-03 17:34:47 +08:00
parent b4bb38b7be
commit fd0b3e1982
45 changed files with 1459 additions and 812 deletions
+13
View File
@@ -53,6 +53,19 @@ class CaseFieldValidationTest(CacheTestCase):
self.assertEqual(resp.status_code, 400, resp.content)
self.assertEqual(resp.json()['code'], 'CASE_SUBTYPE_CONFLICT')
def test_duplicate_exam_items_deduped_on_create(self):
"""同一病例重复 item_code:归一化后只保留一条并成功创建。"""
payload = build_traditional_payload(with_exam_items=True)
self.assertIn('exam_items', payload)
payload['exam_items'].append({
**payload['exam_items'][0],
'item_name': '重复血常规',
'result_text': '应被忽略',
})
resp = self.client.post(CASE_FULL_CREATE_URL, payload, format='json')
self.assertEqual(resp.status_code, 201, resp.content)
self.assertEqual(len(resp.json()['exam_items']), 1)
def test_missing_subtable_400(self):
"""N13: case_type=traditional 但无 traditional 子表 → 400 CASE_SUBTYPE_REQUIRED"""
payload = build_traditional_payload()