Merged in bugfix/cpt-codes (pull request #812)
Bugfix/cpt codes * formatting fix for revenue_cd * format fix for procedure_codes * bugfix for revenue_codes * working version from code main * code formatting from main and code main * removed dubug prints * removed local file paths * standardize state fields * updated test scenerios * minor fix * Merge branch 'main' into bugfix/cpt-codes merging main into cpt code fix * checks for all fields * reused is_empty functionality * moved normalize_to_json_list to utils * Merge branch 'main' into bugfix/cpt-codes merging upto date main * minor touches * pytest fix Approved-by: Katon Minhas
This commit is contained in:
committed by
Katon Minhas
parent
f31c02517a
commit
ca53ff8395
@@ -108,9 +108,9 @@ class TestCodeFuncs(unittest.TestCase):
|
||||
"J CODES", proc_category, hcpcs_mapping, "test.pdf"
|
||||
)
|
||||
|
||||
# Verify the results
|
||||
self.assertEqual(result["PROCEDURE_CD"], "['J0001', 'J0002']")
|
||||
self.assertEqual(result["PROCEDURE_CD_DESC"], "['Drug A', 'Drug B']")
|
||||
# Verify the results - code_category returns lists (JSON conversion happens in extract_codes_from_service)
|
||||
self.assertEqual(result["PROCEDURE_CD"], ["J0001", "J0002"])
|
||||
self.assertEqual(result["PROCEDURE_CD_DESC"], ["Drug A", "Drug B"])
|
||||
self.assertIn("J0001", result["PROCEDURE_CD"])
|
||||
self.assertIn("J0002", result["PROCEDURE_CD"])
|
||||
self.assertIn("Drug A", result["PROCEDURE_CD_DESC"])
|
||||
@@ -124,9 +124,9 @@ class TestCodeFuncs(unittest.TestCase):
|
||||
mock_invoke_claude.return_value = "mock_response"
|
||||
mock_extract.return_value = "Drugs"
|
||||
|
||||
# Test drug category
|
||||
# Test drug category - returns a list
|
||||
result = code_funcs.code_implicit_special("DRUG SERVICE", "test.pdf")
|
||||
self.assertEqual(result["PROCEDURE_CD"], "J0000-J9999")
|
||||
self.assertEqual(result["PROCEDURE_CD"], ["J0000-J9999"])
|
||||
self.assertEqual(result["PROCEDURE_CD_DESC"], "Drugs")
|
||||
|
||||
# Test no match
|
||||
@@ -221,9 +221,9 @@ class TestCodeFuncs(unittest.TestCase):
|
||||
"TEST SERVICE", implicit_run_dict, "test.pdf", self.constants
|
||||
)
|
||||
|
||||
# Verify results
|
||||
self.assertEqual(result["PROCEDURE_CD"], "12345")
|
||||
self.assertEqual(result["PROCEDURE_CD_DESC"], "Test Procedure")
|
||||
# Verify results - code_implicit_rag returns lists
|
||||
self.assertEqual(result["PROCEDURE_CD"], ["12345"])
|
||||
self.assertEqual(result["PROCEDURE_CD_DESC"], ["Test Procedure"])
|
||||
self.assertEqual(result["CODE_METHODOLOGY"], "Implicit - Level 1")
|
||||
|
||||
# Test exception handling
|
||||
@@ -333,12 +333,12 @@ class TestCodeFuncs(unittest.TestCase):
|
||||
}
|
||||
mock_implicit_runs.return_value = {"PROCEDURE_CD": True, "REVENUE_CD": True}
|
||||
|
||||
# Test explicit code match
|
||||
# Test explicit code match - extract_codes_from_service normalizes to JSON list format
|
||||
mock_explicit.return_value = {"PROCEDURE_CD": "12345"}
|
||||
result = code_funcs.extract_codes_from_service(
|
||||
{"SERVICE_TERM": "TEST SERVICE"}, self.constants
|
||||
)
|
||||
self.assertEqual(result["PROCEDURE_CD"], "12345")
|
||||
self.assertEqual(result["PROCEDURE_CD"], '["12345"]')
|
||||
self.assertEqual(result["CODE_METHODOLOGY"], "Explicit")
|
||||
|
||||
# Test unlisted service
|
||||
@@ -437,11 +437,11 @@ class TestCodeFuncs(unittest.TestCase):
|
||||
# Test function
|
||||
result_df = code_funcs.code_breakout(test_df, self.constants)
|
||||
|
||||
# Verify results
|
||||
# Verify results - code_breakout normalizes to JSON list format
|
||||
self.assertIsInstance(result_df, pd.DataFrame)
|
||||
self.assertEqual(len(result_df), 2)
|
||||
self.assertEqual(result_df.iloc[0]["PROCEDURE_CD"], "12345")
|
||||
self.assertEqual(result_df.iloc[1]["PROCEDURE_CD"], "67890")
|
||||
self.assertEqual(result_df.iloc[0]["PROCEDURE_CD"], '["12345"]')
|
||||
self.assertEqual(result_df.iloc[1]["PROCEDURE_CD"], '["67890"]')
|
||||
|
||||
# Verify mock calls
|
||||
mock_fill_claim_type.assert_called_once()
|
||||
|
||||
Reference in New Issue
Block a user