외부 임상 검토 원장을 보강
This commit is contained in:
parent
dd71cb9710
commit
3b540a881f
8 changed files with 310 additions and 50 deletions
|
|
@ -56,6 +56,7 @@ class ClientReplyQualityGateTest(unittest.TestCase):
|
|||
required_approval_fields = {
|
||||
"reviewer",
|
||||
"organization",
|
||||
"reviewer_role_or_qualification",
|
||||
"reviewed_at",
|
||||
"decision",
|
||||
"notes",
|
||||
|
|
@ -68,17 +69,38 @@ class ClientReplyQualityGateTest(unittest.TestCase):
|
|||
self.assertEqual(set(approval), required_approval_fields)
|
||||
self.assertEqual(approval["decision"], status_decisions[status])
|
||||
assessments = [case["reviewer_assessment"] for case in case_set["cases"]]
|
||||
required_assessment_fields = {
|
||||
"decision",
|
||||
"rationale",
|
||||
"findings_and_required_changes",
|
||||
"re_review",
|
||||
"reviewed_at",
|
||||
}
|
||||
self.assertTrue(
|
||||
all(set(assessment) == required_assessment_fields for assessment in assessments),
|
||||
)
|
||||
required_youth_response_fields = {
|
||||
"guardian_notification",
|
||||
"means_restriction",
|
||||
"risk_disposition",
|
||||
"follow_up_48_72h",
|
||||
"documentation",
|
||||
"safeguarding",
|
||||
}
|
||||
youth_responses = case_set["youth_review_responses"]
|
||||
self.assertEqual(set(youth_responses), required_youth_response_fields)
|
||||
if status == "pending_external_review":
|
||||
self.assertTrue(all(value is None for value in approval.values()))
|
||||
self.assertTrue(
|
||||
all(value is None for assessment in assessments for value in assessment.values()),
|
||||
)
|
||||
self.assertTrue(all(value is None for value in youth_responses.values()))
|
||||
else:
|
||||
completed_fields = required_approval_fields - {"notes"}
|
||||
self.assertTrue(all(approval[field] for field in completed_fields))
|
||||
self.assertTrue(all(assessment["decision"] for assessment in assessments))
|
||||
self.assertTrue(all(assessment["rationale"] for assessment in assessments))
|
||||
self.assertTrue(all(assessment["reviewed_at"] for assessment in assessments))
|
||||
self.assertTrue(all(approval[field] for field in required_approval_fields))
|
||||
self.assertTrue(
|
||||
all(value for assessment in assessments for value in assessment.values()),
|
||||
)
|
||||
self.assertTrue(all(value for value in youth_responses.values()))
|
||||
|
||||
source_ids = {source["source_id"] for source in manifest["sources"]}
|
||||
self.assertEqual(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue