Skip to content

Commit 3800e1f

Browse files
committed
Add explicit test for old non-sdc-api behaviour regarding references
1 parent 143eb9f commit 3800e1f

1 file changed

Lines changed: 22 additions & 1 deletion

File tree

tests/test_utils.py

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -314,7 +314,7 @@ async def test_parameter_to_env_resolves_context_reference(fhir_client, safe_db)
314314

315315

316316
@pytest.mark.asyncio
317-
async def test_parameter_to_env_subject_resolves(fhir_client, safe_db):
317+
async def test_parameter_to_env_resolves_subject_reference(fhir_client, safe_db):
318318
patient = fhir_client.resource("Patient")
319319
await patient.save()
320320
patient_ref = {"reference": f"Patient/{patient.id}"}
@@ -333,6 +333,27 @@ async def test_parameter_to_env_subject_resolves(fhir_client, safe_db):
333333
assert env["subject"]["id"] == patient.id
334334

335335

336+
@pytest.mark.asyncio
337+
async def test_parameter_to_env_does_not_resolve_non_subject_reference(fhir_client, safe_db):
338+
# This test for backward compatibility with non sdc api behavior
339+
patient = fhir_client.resource("Patient")
340+
await patient.save()
341+
patient_ref = {"reference": f"Patient/{patient.id}", "display": "Integration Patient"}
342+
343+
parameters = {
344+
"resourceType": "Parameters",
345+
"parameter": [
346+
{"name": "PatientRef", "valueReference": patient_ref},
347+
],
348+
}
349+
350+
env = await parameter_to_env(fhir_client, parameters, is_fhir=True)
351+
352+
assert "useSDCAPI" not in env
353+
assert env["PatientRef"]["display"] == "Integration Patient"
354+
assert env["PatientRef"]["reference"] == f"Patient/{patient.id}"
355+
356+
336357
@pytest.mark.asyncio
337358
async def test_sdc_api_params(fhir_client, safe_db):
338359
patient = fhir_client.resource(

0 commit comments

Comments
 (0)