Search in sources :

Example 21 with Immunization

use of org.hl7.fhir.dstu3.model.Immunization in project openmrs-module-fhir2 by openmrs.

the class ImmunizationFhirResourceProviderIntegrationTest method shouldReturnNotFoundWhenImmunizationNotFoundAsXML.

@Test
public void shouldReturnNotFoundWhenImmunizationNotFoundAsXML() throws Exception {
    MockHttpServletResponse response = get("/Immunization/" + UNKNOWN_IMMUNIZATION_UUID).accept(FhirMediaTypes.XML).go();
    assertThat(response, isNotFound());
    assertThat(response.getContentType(), is(FhirMediaTypes.XML.toString()));
    assertThat(response.getContentAsString(), notNullValue());
    OperationOutcome operationOutcome = readOperationOutcome(response);
    assertThat(operationOutcome, notNullValue());
    assertThat(operationOutcome.hasIssue(), is(true));
}
Also used : OperationOutcome(org.hl7.fhir.r4.model.OperationOutcome) MockHttpServletResponse(org.springframework.mock.web.MockHttpServletResponse) Test(org.junit.Test)

Example 22 with Immunization

use of org.hl7.fhir.dstu3.model.Immunization in project openmrs-module-fhir2 by openmrs.

the class ImmunizationFhirResourceProviderIntegrationTest method shouldCreateNewImmunizationAsJson.

@Test
public void shouldCreateNewImmunizationAsJson() throws Exception {
    // read JSON record
    String jsonImmunization;
    try (InputStream is = this.getClass().getClassLoader().getResourceAsStream(JSON_CREATE_IMMUNIZATION_DOCUMENT)) {
        Objects.requireNonNull(is);
        jsonImmunization = IOUtils.toString(is, StandardCharsets.UTF_8);
    }
    // create IMMUNIZATION
    MockHttpServletResponse response = post("/Immunization").accept(FhirMediaTypes.JSON).jsonContent(jsonImmunization).go();
    // verify created correctly
    assertThat(response, isCreated());
    assertThat(response.getContentType(), is(FhirMediaTypes.JSON.toString()));
    assertThat(response.getContentAsString(), notNullValue());
    Immunization immunization = readResponse(response);
    assertThat(immunization, notNullValue());
    assertThat(immunization.getResourceType().toString(), equalTo("Immunization"));
    assertThat(immunization.getStatus().toCode(), equalTo("completed"));
    assertThat(immunization.getVaccineCode().getCodingFirstRep().getCode(), equalTo("15f83cd6-64e9-4e06-a5f9-364d3b14a43d"));
    assertThat(immunization.getPatient().getReferenceElement().getIdPart(), equalTo("8d703ff2-c3e2-4070-9737-73e713d5a50d"));
    assertThat(immunization.getOccurrenceDateTimeType().getValueAsCalendar().getTime(), sameInstant(Date.from(ZonedDateTime.parse("2020-07-08T18:30:00.000Z").toInstant())));
    assertThat(immunization.hasManufacturer(), is(true));
    assertThat(immunization.getManufacturer().getDisplay(), equalTo("ACME"));
    assertThat(immunization.getLotNumber(), equalTo("FOO1234"));
    assertThat(immunization.getExpirationDate(), sameDay(Date.from(ZonedDateTime.parse("2022-07-31T18:30:00.000Z").toInstant())));
    assertThat(immunization.getPerformer().get(0).getActor().getReferenceElement().getIdPart(), equalTo("6f763a67-2bd1-451c-93b9-95caeb36cc24"));
    assertThat(immunization, validResource());
    // try to get new immunization
    response = get("/Immunization/" + immunization.getIdElement().getIdPart()).accept(FhirMediaTypes.JSON).go();
    assertThat(response, isOk());
    Immunization newImmunization = readResponse(response);
    assertThat(newImmunization.getId(), equalTo(immunization.getId()));
}
Also used : Immunization(org.hl7.fhir.r4.model.Immunization) InputStream(java.io.InputStream) MockHttpServletResponse(org.springframework.mock.web.MockHttpServletResponse) Test(org.junit.Test)

Example 23 with Immunization

use of org.hl7.fhir.dstu3.model.Immunization in project openmrs-module-fhir2 by openmrs.

the class ImmunizationFhirResourceProviderIntegrationTest method shouldReturnExistingImmunizationAsJson.

@Test
public void shouldReturnExistingImmunizationAsJson() throws Exception {
    MockHttpServletResponse response = get("/Immunization/" + IMMUNIZATION_UUID).accept(FhirMediaTypes.JSON).go();
    assertThat(response, isOk());
    assertThat(response.getContentType(), is(FhirMediaTypes.JSON.toString()));
    assertThat(response.getContentAsString(), notNullValue());
    Immunization Immunization = readResponse(response);
    assertThat(Immunization, notNullValue());
    assertThat(Immunization.getIdElement().getIdPart(), equalTo(IMMUNIZATION_UUID));
    assertThat(Immunization, validResource());
}
Also used : Immunization(org.hl7.fhir.r4.model.Immunization) MockHttpServletResponse(org.springframework.mock.web.MockHttpServletResponse) Test(org.junit.Test)

Example 24 with Immunization

use of org.hl7.fhir.dstu3.model.Immunization in project openmrs-module-fhir2 by openmrs.

the class ImmunizationFhirResourceProviderIntegrationTest method shouldUpdateExistingImmunizationAsXML.

@Test
public void shouldUpdateExistingImmunizationAsXML() throws Exception {
    // get the existing record
    MockHttpServletResponse response = get("/Immunization/" + IMMUNIZATION_UUID).accept(FhirMediaTypes.XML).go();
    Immunization immunization = readResponse(response);
    // update the existing record
    Date expirationDate = DateUtils.truncate(new Date(), Calendar.DATE);
    immunization.setExpirationDate(expirationDate);
    // send the update to the server
    response = put("/Immunization/" + IMMUNIZATION_UUID).xmlContent(toXML(immunization)).accept(FhirMediaTypes.XML).go();
    assertThat(response, isOk());
    assertThat(response.getContentType(), is(FhirMediaTypes.XML.toString()));
    assertThat(response.getContentAsString(), notNullValue());
    // read the updated record
    Immunization updatedImmunization = readResponse(response);
    assertThat(updatedImmunization, notNullValue());
    assertThat(updatedImmunization.getIdElement().getIdPart(), equalTo(IMMUNIZATION_UUID));
    assertThat(updatedImmunization.getExpirationDate(), equalTo(expirationDate));
    assertThat(immunization, validResource());
    // double-check the record returned via get
    response = get("/Immunization/" + IMMUNIZATION_UUID).accept(FhirMediaTypes.XML).go();
    Immunization reReadImmunization = readResponse(response);
    assertThat(reReadImmunization.getExpirationDate(), equalTo(expirationDate));
}
Also used : Immunization(org.hl7.fhir.r4.model.Immunization) MockHttpServletResponse(org.springframework.mock.web.MockHttpServletResponse) Date(java.util.Date) LocalDate(java.time.LocalDate) Test(org.junit.Test)

Example 25 with Immunization

use of org.hl7.fhir.dstu3.model.Immunization in project openmrs-module-fhir2 by openmrs.

the class ImmunizationFhirResourceProviderIntegrationTest method shouldReturnExistingImmunizationAsXML.

@Test
public void shouldReturnExistingImmunizationAsXML() throws Exception {
    MockHttpServletResponse response = get("/Immunization/" + IMMUNIZATION_UUID).accept(FhirMediaTypes.XML).go();
    assertThat(response, isOk());
    assertThat(response.getContentType(), is(FhirMediaTypes.XML.toString()));
    assertThat(response.getContentAsString(), notNullValue());
    Immunization Immunization = readResponse(response);
    assertThat(Immunization, notNullValue());
    assertThat(Immunization.getIdElement().getIdPart(), equalTo(IMMUNIZATION_UUID));
    assertThat(Immunization, validResource());
}
Also used : Immunization(org.hl7.fhir.r4.model.Immunization) MockHttpServletResponse(org.springframework.mock.web.MockHttpServletResponse) Test(org.junit.Test)

Aggregations

Immunization (org.hl7.fhir.r4.model.Immunization)47 Test (org.junit.Test)27 Test (org.junit.jupiter.api.Test)22 MockHttpServletResponse (org.springframework.mock.web.MockHttpServletResponse)18 BundleEntryComponent (org.hl7.fhir.r4.model.Bundle.BundleEntryComponent)15 Resource (org.hl7.fhir.r4.model.Resource)13 OperationOutcome (org.hl7.fhir.r4.model.OperationOutcome)8 Bundle (org.hl7.fhir.r4.model.Bundle)7 Organization (org.hl7.fhir.r4.model.Organization)7 BaseFhirProvenanceResourceTest (org.openmrs.module.fhir2.providers.BaseFhirProvenanceResourceTest)6 Date (java.util.Date)5 IBaseResource (org.hl7.fhir.instance.model.api.IBaseResource)5 IdType (org.hl7.fhir.r4.model.IdType)5 Observation (org.hl7.fhir.r4.model.Observation)5 Complex (org.hl7.fhir.r4.utils.formats.Turtle.Complex)5 InputStream (java.io.InputStream)4 Complex (org.hl7.fhir.dstu2016may.formats.RdfGenerator.Complex)4 Complex (org.hl7.fhir.dstu3.utils.formats.Turtle.Complex)4 Obs (org.openmrs.Obs)4 FhirContext (ca.uhn.fhir.context.FhirContext)3