use of org.hl7.fhir.r4.model.Observation in project cqf-ruler by DBCG.
the class CollectDataProviderIT method testCollectData.
@Test
public void testCollectData() {
// Create test Measure
String cql = CqlBuilder.newCqlLibrary("4.0.1").addExpression("Initial Population", "exists([Observation])").build();
Library lib = Libraries.library(cql);
Measure m = MeasureBuilder.newCohortMeasure(lib).build();
this.update(lib);
this.update(m);
// Create test data
Patient john = Patients.john_doe();
this.create(john);
Observation obs = newResource(Observation.class).setSubject(new Reference(john));
this.create(obs);
Encounter enc = newResource(Encounter.class).setSubject(new Reference(john));
this.create(enc);
// Submit it
Parameters results = collectDataProvider.collectData(new SystemRequestDetails(), m.getIdElement(), "2019-01-01", "2019-12-31", Ids.simple(john), null, null);
List<ParametersParameterComponent> resources = org.opencds.cqf.ruler.utility.r4.Parameters.getPartsByName(results, "resource");
assertEquals(1, resources.size());
assertEquals("Observation", resources.get(0).getResource().fhirType());
List<ParametersParameterComponent> reports = org.opencds.cqf.ruler.utility.r4.Parameters.getPartsByName(results, "measureReport");
assertEquals(1, reports.size());
assertEquals("MeasureReport", reports.get(0).getResource().fhirType());
}
use of org.hl7.fhir.r4.model.Observation in project cqf-ruler by DBCG.
the class SubmitDataProviderIT method testSubmitDataNoId.
@Test
public void testSubmitDataNoId() {
// Create a MR and a resource
MeasureReport mr = newResource(MeasureReport.class).setMeasure(new Reference("Measure/123"));
Observation obs = newResource(Observation.class).setValue(new StringType("ABC"));
// Submit it
mySubmitDataProvider.submitData(new SystemRequestDetails(), new IdType("Measure", "123"), mr, Lists.newArrayList(obs));
// Check if they made it to the db
Observation savedObs = search(Observation.class, Searches.all()).single();
assertNotNull(savedObs);
assertEquals("ABC", savedObs.getValue().primitiveValue());
MeasureReport savedMr = search(MeasureReport.class, Searches.all()).single();
assertNotNull(savedMr);
assertEquals("Measure/123", savedMr.getMeasure().getReference());
}
use of org.hl7.fhir.r4.model.Observation in project cqf-ruler by DBCG.
the class CqlExecutionProviderIT method testDataBundleCqlExecutionProviderWithSubject.
@Test
public void testDataBundleCqlExecutionProviderWithSubject() throws Exception {
Parameters params = new Parameters();
Parameters libraryParameter = new Parameters();
params.addParameter().setName("subject").setValue(new StringType("Patient/SimplePatient"));
libraryParameter.addParameter().setName("url").setValue(new StringType(this.getClient().getServerBase() + "Library/SimpleDstu3Library"));
libraryParameter.addParameter().setName("name").setValue(new StringType("SimpleDstu3Library"));
params.addParameter().setName("library").setResource(libraryParameter);
params.addParameter().setName("expression").setValue(new StringType("SimpleDstu3Library.\"observationRetrieve\""));
String packagePrefix = "org/opencds/cqf/ruler/cpg/dstu3/provider/";
loadResource(packagePrefix + "SimpleDstu3Library.json");
loadResource(packagePrefix + "SimplePatient.json");
Bundle data = (Bundle) loadResource(packagePrefix + "SimpleDataBundle.json");
params.addParameter().setName("data").setResource(data);
params.addParameter().setName("useServerData").setValue(new BooleanType(false));
Parameters results = getClient().operation().onServer().named("$cql").withParameters(params).execute();
assertTrue(results.getParameter().get(0).getResource() instanceof Bundle);
assertTrue(((Bundle) results.getParameter().get(0).getResource()).getEntry().get(0).getResource() instanceof Observation);
assertTrue(results.getParameter().get(1).getValue() instanceof StringType);
assertTrue(((StringType) results.getParameter().get(1).getValue()).asStringValue().equals("List"));
logger.debug("Results: ", results);
}
use of org.hl7.fhir.r4.model.Observation in project cqf-ruler by DBCG.
the class CqlExecutionProviderIT method testDataBundleCqlExecutionProvider.
@Test
public void testDataBundleCqlExecutionProvider() throws Exception {
Parameters params = new Parameters();
Parameters libraryParameter = new Parameters();
libraryParameter.addParameter().setName("url").setValue(new StringType(this.getClient().getServerBase() + "Library/SimpleDstu3Library"));
libraryParameter.addParameter().setName("name").setValue(new StringType("SimpleDstu3Library"));
params.addParameter().setName("library").setResource(libraryParameter);
params.addParameter().setName("expression").setValue(new StringType("SimpleDstu3Library.\"observationRetrieve\""));
String packagePrefix = "org/opencds/cqf/ruler/cpg/dstu3/provider/";
loadResource(packagePrefix + "SimpleDstu3Library.json");
loadResource(packagePrefix + "SimplePatient.json");
Bundle data = (Bundle) loadResource(packagePrefix + "SimpleDataBundle.json");
params.addParameter().setName("data").setResource(data);
params.addParameter().setName("useServerData").setValue(new BooleanType(false));
Parameters results = getClient().operation().onServer().named("$cql").withParameters(params).execute();
assertTrue(results.getParameter().get(0).getResource() instanceof Bundle);
assertTrue(((Bundle) results.getParameter().get(0).getResource()).getEntry().get(0).getResource() instanceof Observation);
assertTrue(results.getParameter().get(1).getValue() instanceof StringType);
assertTrue(((StringType) results.getParameter().get(1).getValue()).asStringValue().equals("List"));
logger.debug("Results: ", results);
}
use of org.hl7.fhir.r4.model.Observation in project BridgeServer2 by Sage-Bionetworks.
the class CRCControllerTest method makeObservation.
private String makeObservation(String json) {
IParser parser = FHIR_CONTEXT.newJsonParser();
Observation observation = parser.parseResource(Observation.class, json);
return FHIR_CONTEXT.newJsonParser().encodeResourceToString(observation);
}
Aggregations