Search in sources :

Example 96 with SearchParameterMap

use of org.openmrs.module.fhir2.api.search.param.SearchParameterMap in project openmrs-module-fhir2 by openmrs.

the class FhirServiceRequestServiceImplTest method searchForServiceRequest_shouldReturnCollectionOfServiceRequestByCode.

@Test
public void searchForServiceRequest_shouldReturnCollectionOfServiceRequestByCode() {
    TokenAndListParam code = new TokenAndListParam().addAnd(new TokenParam(CODE));
    SearchParameterMap theParams = new SearchParameterMap();
    theParams.addParameter(CODED_SEARCH_HANDLER, code);
    when(dao.getSearchResults(any(), any())).thenReturn(Collections.singletonList(order));
    when(dao.getSearchResultUuids(any())).thenReturn(Collections.singletonList(SERVICE_REQUEST_UUID));
    when(translator.toFhirResource(order)).thenReturn(fhirServiceRequest);
    when(searchQuery.getQueryResults(any(), any(), any(), any())).thenReturn(new SearchQueryBundleProvider<>(theParams, dao, translator, globalPropertyService, searchQueryInclude));
    when(searchQueryInclude.getIncludedResources(any(), any())).thenReturn(Collections.emptySet());
    IBundleProvider results = serviceRequestService.searchForServiceRequests(null, code, null, null, null, null, null, null);
    List<IBaseResource> resultList = get(results);
    assertThat(results, notNullValue());
    assertThat(resultList, not(empty()));
    assertThat(resultList, hasSize(equalTo(1)));
}
Also used : TokenParam(ca.uhn.fhir.rest.param.TokenParam) IBundleProvider(ca.uhn.fhir.rest.api.server.IBundleProvider) IBaseResource(org.hl7.fhir.instance.model.api.IBaseResource) TokenAndListParam(ca.uhn.fhir.rest.param.TokenAndListParam) SearchParameterMap(org.openmrs.module.fhir2.api.search.param.SearchParameterMap) Test(org.junit.Test)

Example 97 with SearchParameterMap

use of org.openmrs.module.fhir2.api.search.param.SearchParameterMap in project openmrs-module-fhir2 by openmrs.

the class FhirServiceRequestServiceImplTest method searchForPeople_shouldAddRelatedResourcesWhenIncluded.

@Test
public void searchForPeople_shouldAddRelatedResourcesWhenIncluded() {
    HashSet<Include> includes = new HashSet<>();
    includes.add(new Include("ServiceRequest:patient"));
    SearchParameterMap theParams = new SearchParameterMap().addParameter(FhirConstants.INCLUDE_SEARCH_HANDLER, includes);
    when(dao.getSearchResults(any(), any())).thenReturn(Collections.singletonList(order));
    when(dao.getSearchResultUuids(any())).thenReturn(Collections.singletonList(SERVICE_REQUEST_UUID));
    when(translator.toFhirResource(order)).thenReturn(fhirServiceRequest);
    when(searchQuery.getQueryResults(any(), any(), any(), any())).thenReturn(new SearchQueryBundleProvider<>(theParams, dao, translator, globalPropertyService, searchQueryInclude));
    when(searchQueryInclude.getIncludedResources(any(), any())).thenReturn(Collections.singleton(new Patient()));
    IBundleProvider results = serviceRequestService.searchForServiceRequests(null, null, null, null, null, null, null, includes);
    List<IBaseResource> resultList = get(results);
    assertThat(results, notNullValue());
    assertThat(resultList, not(empty()));
    assertThat(resultList.size(), equalTo(2));
    assertThat(resultList, hasItem(is(instanceOf(Patient.class))));
}
Also used : SearchQueryInclude(org.openmrs.module.fhir2.api.search.SearchQueryInclude) Include(ca.uhn.fhir.model.api.Include) Patient(org.hl7.fhir.r4.model.Patient) IBundleProvider(ca.uhn.fhir.rest.api.server.IBundleProvider) IBaseResource(org.hl7.fhir.instance.model.api.IBaseResource) HashSet(java.util.HashSet) SearchParameterMap(org.openmrs.module.fhir2.api.search.param.SearchParameterMap) Test(org.junit.Test)

Example 98 with SearchParameterMap

use of org.openmrs.module.fhir2.api.search.param.SearchParameterMap in project openmrs-module-fhir2 by openmrs.

the class FhirUserServiceImplTest method shouldsearchForUsersByIdentifier.

@Test
public void shouldsearchForUsersByIdentifier() {
    TokenAndListParam identifier = new TokenAndListParam().addAnd(new TokenOrListParam().add(USER_SYSTEM_ID));
    SearchParameterMap theParams = new SearchParameterMap().addParameter(IDENTIFIER_SEARCH_HANDLER, identifier);
    when(dao.getSearchResultUuids(any())).thenReturn(singletonList(USER_UUID));
    when(dao.getSearchResults(any(), any())).thenReturn(singletonList(user));
    when(searchQuery.getQueryResults(any(), any(), any(), any())).thenReturn(new SearchQueryBundleProvider<>(theParams, dao, translator, globalPropertyService, searchQueryInclude));
    when(translator.toFhirResource(user)).thenReturn(practitioner);
    when(searchQueryInclude.getIncludedResources(any(), any())).thenReturn(Collections.emptySet());
    IBundleProvider results = userService.searchForUsers(theParams);
    List<IBaseResource> resultList = get(results);
    assertThat(results, notNullValue());
    assertThat(resultList, not(empty()));
    assertThat(resultList, hasSize(greaterThanOrEqualTo(1)));
}
Also used : TokenOrListParam(ca.uhn.fhir.rest.param.TokenOrListParam) IBundleProvider(ca.uhn.fhir.rest.api.server.IBundleProvider) IBaseResource(org.hl7.fhir.instance.model.api.IBaseResource) TokenAndListParam(ca.uhn.fhir.rest.param.TokenAndListParam) SearchParameterMap(org.openmrs.module.fhir2.api.search.param.SearchParameterMap) Test(org.junit.Test)

Example 99 with SearchParameterMap

use of org.openmrs.module.fhir2.api.search.param.SearchParameterMap in project openmrs-module-fhir2 by openmrs.

the class FhirUserServiceImplTest method shouldReturnEmptyCollectionByWrongAddressCountry.

@Test
public void shouldReturnEmptyCollectionByWrongAddressCountry() {
    StringAndListParam country = new StringAndListParam().addAnd(new StringParam(WRONG_COUNTRY));
    SearchParameterMap theParams = new SearchParameterMap().addParameter(FhirConstants.ADDRESS_SEARCH_HANDLER, FhirConstants.COUNTRY_PROPERTY, country);
    when(dao.getSearchResultUuids(any())).thenReturn(Collections.emptyList());
    when(searchQuery.getQueryResults(any(), any(), any(), any())).thenReturn(new SearchQueryBundleProvider<>(theParams, dao, translator, globalPropertyService, searchQueryInclude));
    IBundleProvider results = userService.searchForUsers(theParams);
    List<IBaseResource> resultList = get(results);
    assertThat(results, notNullValue());
    assertThat(resultList, empty());
}
Also used : StringAndListParam(ca.uhn.fhir.rest.param.StringAndListParam) IBundleProvider(ca.uhn.fhir.rest.api.server.IBundleProvider) StringParam(ca.uhn.fhir.rest.param.StringParam) IBaseResource(org.hl7.fhir.instance.model.api.IBaseResource) SearchParameterMap(org.openmrs.module.fhir2.api.search.param.SearchParameterMap) Test(org.junit.Test)

Example 100 with SearchParameterMap

use of org.openmrs.module.fhir2.api.search.param.SearchParameterMap in project openmrs-module-fhir2 by openmrs.

the class FhirUserServiceImplTest method shouldSearchForUsersByName.

@Test
public void shouldSearchForUsersByName() {
    StringAndListParam name = new StringAndListParam().addAnd(new StringOrListParam().add(new StringParam(USER_NAME)));
    SearchParameterMap theParams = new SearchParameterMap().addParameter(NAME_SEARCH_HANDLER, NAME_PROPERTY, name);
    when(dao.getSearchResultUuids(any())).thenReturn(singletonList(USER_UUID));
    when(dao.getSearchResults(any(), any())).thenReturn(singletonList(user));
    when(searchQuery.getQueryResults(any(), any(), any(), any())).thenReturn(new SearchQueryBundleProvider<>(theParams, dao, translator, globalPropertyService, searchQueryInclude));
    when(translator.toFhirResource(user)).thenReturn(practitioner);
    when(searchQueryInclude.getIncludedResources(any(), any())).thenReturn(Collections.emptySet());
    IBundleProvider results = userService.searchForUsers(theParams);
    List<IBaseResource> resultList = get(results);
    assertThat(results, notNullValue());
    assertThat(resultList, not(empty()));
    assertThat(resultList, hasSize(greaterThanOrEqualTo(1)));
}
Also used : StringAndListParam(ca.uhn.fhir.rest.param.StringAndListParam) IBundleProvider(ca.uhn.fhir.rest.api.server.IBundleProvider) StringParam(ca.uhn.fhir.rest.param.StringParam) IBaseResource(org.hl7.fhir.instance.model.api.IBaseResource) StringOrListParam(ca.uhn.fhir.rest.param.StringOrListParam) SearchParameterMap(org.openmrs.module.fhir2.api.search.param.SearchParameterMap) Test(org.junit.Test)

Aggregations

SearchParameterMap (org.openmrs.module.fhir2.api.search.param.SearchParameterMap)813 Test (org.junit.Test)803 IBundleProvider (ca.uhn.fhir.rest.api.server.IBundleProvider)802 BaseModuleContextSensitiveTest (org.openmrs.test.BaseModuleContextSensitiveTest)619 IBaseResource (org.hl7.fhir.instance.model.api.IBaseResource)491 ReferenceAndListParam (ca.uhn.fhir.rest.param.ReferenceAndListParam)282 ReferenceOrListParam (ca.uhn.fhir.rest.param.ReferenceOrListParam)282 ReferenceParam (ca.uhn.fhir.rest.param.ReferenceParam)282 TokenAndListParam (ca.uhn.fhir.rest.param.TokenAndListParam)264 TokenParam (ca.uhn.fhir.rest.param.TokenParam)240 StringParam (ca.uhn.fhir.rest.param.StringParam)173 StringAndListParam (ca.uhn.fhir.rest.param.StringAndListParam)158 DateRangeParam (ca.uhn.fhir.rest.param.DateRangeParam)127 HashSet (java.util.HashSet)115 Include (ca.uhn.fhir.model.api.Include)108 TokenOrListParam (ca.uhn.fhir.rest.param.TokenOrListParam)75 StringOrListParam (ca.uhn.fhir.rest.param.StringOrListParam)60 ServiceRequest (org.hl7.fhir.r4.model.ServiceRequest)57 MedicationRequest (org.hl7.fhir.r4.model.MedicationRequest)51 Patient (org.hl7.fhir.r4.model.Patient)51